JavaScript The Definitive Guide, David Flanagan JavaScript The Good Parts, Douglas Crockford 其他编程的书 The C Programming Language, Brian Kernighan Core Java, Cay Horstmann Effective Java, Joshua Bloch Art of Computer Programming, Donald Knuth
【在 a*w 的大作中提到】 : JavaScript The Definitive Guide, David Flanagan : JavaScript The Good Parts, Douglas Crockford : 其他编程的书 : The C Programming Language, Brian Kernighan : Core Java, Cay Horstmann : Effective Java, Joshua Bloch : Art of Computer Programming, Donald Knuth
【在 w*******g 的大作中提到】 : JavaScript is a mixture of self language and lisp : nothing to do with Java : i research this for a living and it is not for kids : Ruby is probably better
l*d
27 楼
bless
s*c
28 楼
看置顶TimeLine去年降级的。
【在 a***i 的大作中提到】 : 双飞3个月拿卡是不可能的, 版上这么多, 哪个3个月拿卡了?
w*g
29 楼
don't know about that they are different tools with their own strength Ruby is more regular and purely object oriented if you start with Ruby, you can probably avoid some bad habits
【在 a*w 的大作中提到】 : JavaScript The Definitive Guide, David Flanagan : JavaScript The Good Parts, Douglas Crockford : 其他编程的书 : The C Programming Language, Brian Kernighan : Core Java, Cay Horstmann : Effective Java, Joshua Bloch : Art of Computer Programming, Donald Knuth
【在 w*******g 的大作中提到】 : JavaScript is a mixture of self language and lisp : nothing to do with Java : i research this for a living and it is not for kids : Ruby is probably better
【在 w*******g 的大作中提到】 : don't know about that : they are different tools with their own strength : Ruby is more regular and purely object oriented : if you start with Ruby, you can probably avoid some bad habits
When you start to learn a programming language, you want to start from a pure language. Before you read my incomprehensible post, you can think of Ruby as a piano that is suitable for beginners since it got the purest sound. JavaScript is more like an electric keyboard or guitar. Funky but hard to get the right tune. Expert players can play fantastically but beginners will only produce noise. ========= Programming languages have many categories and the division is not always clear. However, you can roughly divide PL into two camps: 1. functional 2. imperative Among the imperative languages, you can sub-divide it into 2.1. procedural 2.2. object oriented The main stream thinking is that object-oriented language is more suitable for modeling large applications and is more natural to program. So if you want to start an OO language, you want to pick an pure OO language . The purest OO language is Smalltalk but it is pretty much an ancient language and not supported. The next best thing is Ruby. It is still quite pure and everything is an object. Using Ruby, your child can focus on building a program by developing objects. Functionality of a program is divided among objects that know how to do things to themselves and how to communicate to delegate responsibilities. If your child is more functional programming inclined and more math oriented , he/she should try the purest functional language. A good choice in this regard is either ML, which is strongly typed functional language or Scheme, which is a dialect of Lisp. For advanced users, they can consider Haskell. Other languages are not entirely pure. Many are bastard children of many parents. For example, Java is more of an OO language but you can find procedural traits such as primitive values. Scala is actually a beast of a programming language. It is very well designed but it is very complex. It is a mixture of functional and object- oriented programming language. One has to have certain level of sophistication to even try it. Your IOS devices probably run Objective-C, which is an ancient language that descended from Smalltalk and C. JavaScript is a bastard language as well. It merged ideas from Self and Lisp . Self is a purified dialect of Smalltalk. Unlike Smalltalk, Self does not even have classes. Objects are cloned and inheritance is simulated using prototypes. That is why JavaScript got this weird way of prototype chaining. The semantics of JavaScript is non-standard and quiet intricate. Even the best programmers can be surprised by its behavior, let alone children.
【在 w*******g 的大作中提到】 : When you start to learn a programming language, you want to start from a : pure language. : Before you read my incomprehensible post, you can think of Ruby as a piano : that is suitable for beginners since it got the purest sound. JavaScript is : more like an electric keyboard or guitar. Funky but hard to get the right : tune. Expert players can play fantastically but beginners will only produce : noise. : ========= : Programming languages have many categories and the division is not always : clear.