1 |
I don't want to start a flame war, but after an initial love affair I |
2 |
dont't much like Java. It's not a "better C++", it's a "different C++". I |
3 |
found the hype associated with the language irritatiing and the lack of |
4 |
stability as the language evolved unfortunate. But there are places where |
5 |
the language was useful and I put aside my personal prejudices and worked |
6 |
with the notation. |
7 |
|
8 |
But, I personally don't think Java's a good language for Andrew's |
9 |
purpose--which is to learn to program. |
10 |
|
11 |
In a very real sense, I think assembly lanaguage (or even Hex machine |
12 |
code) may be a good place to start to learn programming. A good macro |
13 |
assembler is an awesome tool in the hands of a skilled programmer. Some |
14 |
beginning programming books--Yale Patt's in particular--adopt the view |
15 |
that everyone should learn about programming from the bits up. |
16 |
|
17 |
My point was/is that programming is language independent. I've always |
18 |
liked Michael Griffith's comment about programming: "I always use the same |
19 |
programming language no matter what the compiler" or something like that. |
20 |
Using a polymorphic, internally consistent, object-oriented language like |
21 |
Python is a good framework to learn programming. I think Python does a |
22 |
pretty good job of capturing the abstractions you need to write simple, |
23 |
conceptually clear programs. You don't have to worry about the nits, you |
24 |
can program interactively and see what happens, and there's not the huge |
25 |
overhead of type mechanisms to drag into every single little program. The |
26 |
language is introspective (aka introspective) so programs can learn about |
27 |
their own structure. |
28 |
|
29 |
But ultimately the only way to learn about programming is to read programs |
30 |
and work with masters in the field. It's still an art not a science. |
31 |
|
32 |
On Mon, 22 Mar 2004, Marc Giger wrote: |
33 |
|
34 |
> On Mon, 22 Mar 2004 13:13:42 -0600 |
35 |
> Andrew Gaffney <agaffney@×××××××××××.com> wrote: |
36 |
> |
37 |
> > Dennis Allison wrote: |
38 |
> > > First, it is important to understand that programming is independent |
39 |
> > > of any particular programming language. Languages are just the |
40 |
> > > representation or notation for programs. Some are large and complex |
41 |
> > > and likely to get in the way of understanding programming (C++); |
42 |
> > > others are spare and simple and conceptually clean (Python, Scheme). |
43 |
> > > |
44 |
> > > I'd begin with Python and then move on to other languages. Starting |
45 |
> > > with C++ is a bit like deciding you want to take up mountain |
46 |
> > > climbing and that the first mountain you want to climb is Mount |
47 |
> > > Everest. |
48 |
> > |
49 |
> > While I do completely agree with that analogy, C++ was the first |
50 |
> > (real) language I learned (after Apple BASIC, QBasic, VB, and Java |
51 |
> > (*I* do not consider Java a real language)) and |
52 |
> |
53 |
> I really don't understand what people have against Java?!? Is it |
54 |
> because of Sun and its license? |
55 |
> I have many years of experience in java programming and also learned |
56 |
> object oriented programming with it. In my opinion it's good and clean. |
57 |
> How many other languages do you know, which works on multiple |
58 |
> platforms without recompiling, run as a plugin in browsers, has deep |
59 |
> security concept built in (sandbox, bytecode verifier, etc), |
60 |
> multithreading as a basic language feature, exception handling, RPC/RMI, |
61 |
> etc etc etc ... |
62 |
> |
63 |
> If someone really is interested in understanding object oriented |
64 |
> programming then I would advise to begin with Java. |
65 |
> |
66 |
> > it gave me a broad understanding of the way that any language works. |
67 |
> > Because I know C/C++, I can easily pick up new languages because I |
68 |
> > don't have to learn new concepts. |
69 |
> |
70 |
> Agreed, but as you said, your first language was not C/C++ but Basic, |
71 |
> VB, Java etc. Correct me if I am wrong, but I think you |
72 |
> learned(hopefully) object oriented programming mostly with Java. |
73 |
> |
74 |
> In my case I learned OOP in Java and could utilize it to C++ without |
75 |
> big problems. The only strange thing was weird language constructs and |
76 |
> discrepancies in C/C++. |
77 |
> |
78 |
> Please don't get me wrong. |
79 |
> |
80 |
> Regards |
81 |
> |
82 |
> Marc |
83 |
> |
84 |
> -- |
85 |
> gentoo-dev@g.o mailing list |
86 |
> |
87 |
|
88 |
-- |
89 |
Dennis Allison * Computer Systems Laboratory * Gates 227 |
90 |
* Stanford University * Stanford CA 94305 |
91 |
* (650) 723-9213 * (650) 723-0033 fax |
92 |
* allison@×××××××××××××××.edu |
93 |
* allison@×××××××××××××××.edu |
94 |
|
95 |
|
96 |
|
97 |
-- |
98 |
gentoo-dev@g.o mailing list |