Учебник по программированию - на языке Java
Беседы о программировании
После того как в течение семи лет я зарабатывал на жизнь критикой работ разных авторов, я скоро на себе прочувствую, каково самому оказаться объектом критики. Моя первая книга "Как программировать на языке Java" будет опубликована издательством Ziff-Davis в октябре. Сознаюсь, что работа над этой книгой очень многому меня научила.
Если бы я хотел сделать рекламу своей книге, то эта статья появилась бы позднее, накануне выхода книги из печати. Не это побудило меня написать данную статью. Мне хотелось рассказать о том, что заставило меня отрывать время от семьи, забросить любимые занятия и забыть о сне, всецело посвятив себя работе над книгой.
Одной из причин, побудивших меня написать книгу, было желание прочитать курс программирования для старшего сына и его друзей. В их школе для обучения используются только компьютеры семейства Macintosh, а дома у ребят были самые разные машины, поэтому я понимал, что должен взять за основу какое-то мультиплатформное средство.
Мне не хотелось использовать для учебного курса язык Cи или Cи++, поскольку начинать программирование с одного из этих языков - все равно что учить готовить на кухне без водопровода: какая там кулинария, когда приходится постоянно бегать за водой к колодцу. Пока ученик освоит все структуры и указатели данных, у него пропадет всякий интерес к творческой работе. Обучение должно быть живым и наглядным.
Знакомый профессор информатики поделился со мной своими соображениями о том, что можно сделать для нового поколения программистов, встроив языки низкого уровня, наподобие Cи, в интегрированные среды разработки. Его новые студенты подходят к процессу написания программы, как к видеоигре.
Первый уровень "игры" - пройти компиляцию и выйти в отладчик. Второй уровень - заставить работать программу, чтобы увидеть, что же она делает. Третий уровень - заставить программу делать то, что от нее требуется, во всяком случае, большую часть времени. После чего основная масса студентов думает, что это "победа".
Я не хотел поощрять такой ход мыслей. Последние несколько лет я считал, что первый курс программирования следует начинать с языка Ada. Это очень удобный язык, в котором реализованы современные идеи параллельных задач и абстрактных типов данных, заставляющий начинать программирование с серьезного проектирования, а не с кодирования.
Однако использование средств языка Ada обходится довольно дорого, как по цене, так и по аппаратным средствам, которые для них требуются. Кроме того, следует признать, что этот язык нельзя назвать модным, хотя он мог бы им стать.
Но Ada среди языков программирования - это как "Вольво" в мире автомобилей: те, кто никогда не водил его, считают этот автомобиль старомодным, хотя и безопасным, и только истинные ценители знают, на что способен этот "хот-род".
Во всяком случае, я прочитал 16 книг по языку Java и не нашел ни одной, которая была бы адресована тем, кто никогда не программировал. Почти все авторы считают, что вы должны знать Cи или Cи++. Но масса читателей не знает этих языков.
Как быть с программистами на Коболе, которые хотели бы использовать средства Java для клиент-ориентированного анализа данных, распределенных в корпоративной сети? Или что делать разработчикам на Visual Basic или PowerBuilder, которым требуется предоставить своим заказчикам программы поиска товаров и послепродажного сопровождения заказов в сети World Wide Web?
Всем им будет мало пользы от того, что вы им скажете: "Java - это то же, что и Cи++ с автоматической сборкой мусора" или: "Java - это то же, что и Cи++ с массивами вместо арифметических операций над указателями". Мне кажется, я могу сообщить этим людям нечто более полезное. Посмотрим, согласятся ли со мной читатели.
Нашей обязанностью как специалистов является не только повышение собственного профессионального мастерства, но и воспитание нового поколения талантливых программистов.
Итак, эта книга - мой "первый уровень в игре": ведь обучение программированию - серьезная игра.
Питер Kоффи
Связаться c Питером Коффи можно через MCI Mail по адресу: 357-1756, через CompuServe по адресу: 72631,113 или 3571756@mcimail.com.
Я не нашел ни одной книги по Java, рассчитанной на тех, кто никогда не программировал