Компьютеры Windows Интернет

Основы программирования java для начинающих.  Программирование на Java для начинающих

Вы хотите научиться программировать? Разумная мысль: лишним такой навык, скорее всего, не будет. Правда, для этого придется немножко потрудиться. Предлагаемый вашему вниманию цикл занятий, который позволит в обозримые сроки не только получить представление о том, что такое программирование, но и научиться создавать программы нетривиального назначения и размера.

Также важно понимать, что разговор должен быть взаимоисключающим. Довольно часто люди приходят к разговору, ожидая ответа на заданные вопросы. Однако, если ваш работодатель не спрашивает вас о ваших конкретных навыках, и вы не расскажете себе об этом, это будет вашей ошибкой. Работодатели ищут людей, которые хотят учиться, с сильной мотивацией расти и добиваться результатов.

Следует признать, что некоторые из учеников сам является одним из наиболее сложных, так что если вам удалось получить приглашение на собеседование, а затем, значительный козырь в руке. Сами работодатели хорошо знают, что обучение работе в другой области или пребывание в университете очень сложно и ценно.

Существует несколько способов обучения программированию.

Первый и, пожалуй, самый распространенный – по книгам. Все, что нужно - найти подходящую книгу и последовательно, страница за страницей прочесть ее и выполнить все предложенные упражнения (если таковые имеются). Если книга стоящая (предпочтительно от авторов технологии или языка программирования), то этот способ рано или поздно, дает превосходные результаты: вы будете знать и понимать большую часть необходимого материала. Но этот способ долгий и мало пригоден для тех, кто только-только начинает программировать и чей опыт ограничен самыми примитивными сведеними, которые он или она получили в школе или на работе. Нужно обладать изрядным терпением, упорством (зачастую даже упрямством), чтобы «продраться» сквозь массу новых понятий, концепций и непривычную терминологию. Все-таки, книги хороши для тех, кто обладает хотя бы начальным знанием предмета и не останавливается на каждой строке только для того, чтобы просто понять о чем идет речь.

Не бойтесь спросить, работаете ли вы. Успешный переход к переговорам о работе и задачам - задача для работы. Естественно, рабочая среда, задачи и проекты будут сильно отличаться от того, что вы делали дома. Сначала это выглядит сложным, но вам не нужно бояться.

Во-первых, вы увидите, что ваша команда или коллеги могут работать по-другому, чем вы привыкли или работаете. В таких случаях он должен быть относительно гибким и не должен строго придерживаться своих собственных процедур. Еще одна проблема, которую мы замечаем - коллеги-самоучки часто боятся задавать вопросы, когда есть неопределенность. Работник и работодатель должны понимать, что нет глупых вопросов и не спрашивайте, а не проиграть, в отличие от многих. Только таким образом работодатель поймет, какие знания вам не хватает, а вы - как работать эффективно и не прекращать совершенствоваться.

Кроме того, не имея опыта вы вряд ли выберете именно ту книгу, которая даст нужные знания. Книжный рынок завален макулатурой высокого полиграфического качества. Но ценность большинства таких пособий, учебников и книг – более чем сомнительна. Порой небольшая и невзрачная книга по смешной цене оказывается неизмеримо полезнее роскошного издания с превосходной графикой на мелованной бумаге (и ценой в десять-пятнадцать раз большей).

Кроме того, многие работодатели готовы помочь как можно большему количеству новичков. Например, мы очень гордимся тем, что все новички обязаны ехать 2-6 недель. в которых наблюдаются как более сильные, так и менее слабые компетенции, и в то же время мы организуем индивидуальный план развития для сотрудника, который ускоряется как можно быстрее и целенаправленно улучшается.

Рынок очень динамичен и постоянно меняется. Новые технологии, библиотеки и инструменты постоянно обновляются, поэтому работа разработчика идет полным ходом. Неважно, являетесь ли вы младшим или старшим - все должны учиться. Это также заметно в рабочих разговорах - программисты не мотивируют фрукты или игры, им нужны хорошие экологические улучшения.

Кроме того, многие работодатели готовы помочь как можно большему количеству новичков. Например, мы очень гордимся тем, что все новички обязаны ехать 2-6 недель. в которых наблюдаются как более сильные, так и менее слабые компетенции, и в то же время мы организуем индивидуальный план развития для сотрудника, который ускоряется как можно быстрее и целенаправленно улучшается.

Второй способ – курсы с опытным преподавателем. Идеальный вариант когда вы и преподаватель работаете парой: преподаватель - объясняет и показывает, вы – пытаетесь повторить и развить. Вы можете в любой момент времени остановиться и уточнить то, чего не понимаете. Сам же преподаватель может корректировать темп обучения в соответствии с вашими успехами или неудачами. Несколько хуже, когда преподаватель один, а учащихся – несколько человек. Обычно и этот способ дает отличные результаты при условии, что группа не очень велика (скажем, 3, максимум 5 человек) и уровень подготовки всех учащихся примерно одинаков. Если есть возможность и финансы позволяют оплатить такие курсы – лучше ими и воспользоваться.

К сожалению, этот способ недоступен жителям небольших населенных пунктов, где нет никаких обучающих центров, а также тем, чей уровень дохода не настолько большой, чтобы позволить себе такую «роскошь». Конечно, случается, что работодатель за свой счет посылает своих работников на обучающие курсы, но тут уж кому как повезет.

Третий способ (и сразу же скажем – лучший из всех) – поработать рядом с опытным специалистом-наставником. Книги – книгами, курсы – курсами, а личный пример, особенно в реальных («боевых») условиях – просто находка. Порой достаточно просто сидеть и наблюдать, задавая при необходимости вопросы. Если наставник вменяемый человек (а настоящие профессионалы, как правило, вменяемые и доброжелательные люди), то вы за несколько недель получите то, что позволит вам начать работать над задачами средней сложности и не обращаться поминутно к справочникам в поисках элементарных вещей. За такой срок вы, конечно, не станете профессионалом, но зато не будете и полным новичком. Конечно, в процессе обучения нужно помнить о чувстве меры и не «доставать» занятого специалиста совсем уж элементарными вопросами: вначале надо поискать ответ самому. Так вы получите необходимые знания и навыки практически бесплатно и за весьма короткий срок.

Но что делать, если и этот способ не осуществим, а научиться хочется? Неужели рискнуть и обратиться к книгам? И все-таки ситуация не безнадежна. Мы решили подготовить небольшой обучающий курс для новичков. Этот курс содержит только самое необходимое, но дает достаточное представление о предмете и навыки, которые позволят вам дальше двигаться самостоятельно. Конечно, отстутствие обратной связи между нами и вами будет известным препятствием, но мы надеемся, что приложив определенные усилия вы сумеете кое-чему научиться. Во всяком случае мы рассчитываем, что изучив этот курс полностью, вы сможете дальше двигаться сами. Конечно, легкой жизни мы вам не обещаем, но помочь – постараемся. Прежде чем переходить к собственно самому курсу, прочтите и обдумайте несколько рекомендаций:

  • информационные технологии можно, конечно, изучать и без компьютера, но согласитесь – с компьютером все-же и комфортнее, и практичнее; поэтому компьютер необходим. Подойдет любая модель не «древнее» 5 лет. Никаких особенных требований к начинке и конфигурации аппаратных средств нет, но помните простые правила – чем больше оперативной памяти, тем лучше, чем качественней монитор – тем удобнее. Одним словом, не экономьте на пустяках, но и не транжирьте деньги попусту. Типичный ноутбук стоимостью около $500 или чуть больше – в самый раз.
  • на компьютере должна быть установлена любая современная операционная система (какая – абсолютно не важно): Windows, Linux, MacOS, FreeBSD и т.д. Поскольку у подавляющего большинства пользователей на компьютере стоит операционная система семейства Windows (той или иной версии) от компании Microsoft, то мы в дальнейшем изложении будем ориентироваться прежде всего на нее. Вы должны уметь работать на компьютере (пользоваться клавитурой, мышью, USB-устройствами, принтером, подключаться к сети Internet и т.п.). Большую помощь могут оказать навыки работы с текстовыми редакторами или электронными таблицами. Вообще, запомните, что главный инструмент программиста (после головы, конечно) – клавиатура, поэтому если вы с трудом находите на клавиатуре клавишу пробела, то у вас будут большие проблемы. Помочь тут может только практика.
  • что касается необходимого для этого курса программного обеспечения, о нем мы поговорим в следующий раз. Заметим только, что для его получения нужен выход в Internet. Если вы читате эти строки, то такой выход у вас уже есть.
  • курс расчитан на регулярную работу. Не поддавайтесь искушению пропускать то, что вам кажется элементарным и перескакивать к следующей теме: это чревато неприятными последствиями, т.к. вы можете пропустить тонкий момент или важную деталь.
  • информационные технологии перенасыщены специфической терминологией, преимущественно англоязычного происхождения; практически вся ценная документация написана на английском языке. Так что полезно вооружиться хоть каким-нибудь словарем (подойдет любой электронный и даже не самый мощный) – постепенно вы привыкнете и выучите большинство необходимых фраз и терминов.
  • длительность каждого занятия – от 15 до 40 минут. Каждое занятие должно быть изучено полностью: от корки, до корки. Мы старались сделать курс максимально понятным, но без воды и длинных рассуждений. Примеры программного кода должны быть набраны и проверены на вашем компьютере (это, правда, не всегда выполнимо, если рассматривается большой вопрос и обсуждение растягивается на несколько занятий, но рано или поздно вы должны – даже обязаны – получить такой результат, какой должен быть).
  • если устали – отдохните день, другой. Никакой катастрофы не случится. Но не более. Не пытайтесь за день наверстать то, что нужно было изучать два месяца – вы устанете, запутаетесь и, в конце-концов, разочаруетесь в себе или в том, чем занимались. Если перерыв случился, то догоняйте не спеша. Главное – не запомнить, а понять. То, что понято, запоминается само собой. Так что никакой зубрежки.
  • заведите блокнот или тетрадку и отмечайте в ней то, что покажется вам важным. Не надо конспектировать – записывайте только то, что вам – именно вам – показалось интересным, глупым, смешным. Это может быть фраза, фрагмент кода, цитата, карикатура – все что угодно. Периодически просматривайте более ранние записи; это поможет вспомнить то, что вы изучили.

Наш подход ближе всего всего к третьему способу обучения – т.е. обучению с наставником. Наш принцип простой: показать и объяснить ключевые детали. Мы не станем долго, скучно и утомительно обсуждать простые и очевидные вещи (о них, если понадобится, вы найдете достаточно информации и в книгах, и в документации, и на специализированных форумах). Мы постепенно разработаем небольшое приложение, которое покажет вам работу профессионального программиста. Но «небольшое» не означает «простое» - вовсе нет! Чтобы получить результат вам придется изрядно потрудиться. Но пугаться не стоит – результат того стоит. Главное – захотеть и следовать к поставленной цели, преодолевая по пути холмы и ямы.

А сейчас давайте передохнем. К следующему занятию подготовьте к работе компьютер – удостоверьтесь, что на жестком диске имеется хотя бы 1 Гб свободного дискового пространства; если оперативная память меньше 1Гб, то выясните – можно ли ее увеличить и обязательно увеличьте (с оперативной памятью вообще не стоит экономить: если компьютер позволяет устанавливать 4 Гб, то столько и устанавливайте; поверьте, это окупается комфортностью работы и экономией времени): нам предстоит немножко нудная, но необходимая работа по установке нескольких программ. Так что до встречи!

Барри Берд «Java для чайников» Вильямс, 2013 , 5-е издание, 363 стр. (8,23 мб. djvu)

О Java.

Для чайников, все равно, что сказать программирование . Звучит банально, но Java на сегодняшний день наиболее популярный язык программирования. На нем программируют больше чем на C++ и C# вместе взятых. Начните изучать Java, если хотите изучить программирование и не прогадаете. Код написанный на этом языке программирования является кроссплатформенным. Он будет выполняться на любом устройстве и под управлением любой операционной системы, где установлена виртуальная машина Java (JRE) — «Написал раз, работает везде». Книга «Java для чайников», именно на них и рассчитана.

О книге.

Если вы никогда не изучали программирование и не знаете о ООП, не расстраивайтесь, Барри Берд умеет хорошо объяснять. Как минимум основные понятия объектно ориентированного программирования и базовые знания по языку Java вам гарантированы. При условии внимательного изучения материала книги и выполнения заданий в виде примеров кода. В руководстве автор расскажет о истории возникновения языка Java, его основных концепциях, достоинствах и недостатках, существующих версиях и их различиях, инструментарии необходимом для кодирования и выполнения готовых программ (JDK, JRE, Eclipse).

Изучите основы: грамматики (синтаксис) языка, понятие классов API (стандартные библиотеки), напишите свою первую программу. Для начального этапа изучения Java этой книги вполне достаточно. Если у вас хватило мужества дочитать ее и выполнить хотя бы часть заданий, то можете начинать изучать более объемные и . Путь к совершенству имеет начало, но не имеет конца.

Оглавление книги
Об авторе 13
Введение 15
Как работать с этой книгой 15
Соглашения, используемые в книге 15
Что можно не читать 16
Несколько предположений 17
Структура книги 18
Часть I. Основы Java 18
Часть II. Создание программы на Java 18
Часть III. Объектно-ориентированное программирование 18
Часть IV. Передовые методики программирования 19
Часть V. Великолепные десятки 19
Часть VI. Приложения 19
Пиктограммы, используемые в книге 19
Что дальше 20
Ждем ваших отзывов! 20

Часть I. Основы Java 21

Глава 1. Знакомство с Java 23
Что можно делать с помощью Java 24
Зачем писать программы 25
Немного истории 25
Объектно-ориентированное программирование 28
Объектно-ориентированные языки 28
Объекты и классы 30
Преимущества объектно-ориентированного подхода 31
Наглядное представление классов и объектов 32
Что дальше 33

Глава 2. Разработка программного обеспечения 35
Быстрое начало 35
Что должно быть установлено на компьютере 37
Что такое компилятор 38
Что такое виртуальная машина Java 40
Процесс разработки 45
Интегрированная среда разработки 46

Глава 3. Базовые компоненты Java 49
Поговорим на языке Java 49
Грамматика и общие имена 50
Слова в программе Java 51
Ваша первая программа на Java 53
Как работает ваша первая программа 54
Классы 54
Методы 55
Главный метод программы 57
Как приказать компьютеру выполнить нужную операцию 58
Фигурные скобки 60
Не говорите “Без комментариев… ” 62
Добавление комментариев в код 63
Не будьте слишком строги к старине Барри 66
Использование комментариев для экспериментов с кодом 66

Часть II. Создание программы на Java 69

Глава 4. Переменные и значения 71
Переменчивая переменная 71
Оператор присваивания 74
Типы значений и переменных 75
Отображение текста 77
Числа без десятичной точки 78
Инициализация при объявлении 79
Примитивные типы Java 80
Тип char 81
Тип boolean 82
Ссылочные типы 83
Объявление импорта 86
Создание новых значений с помощью операторов 87
Инициализировать можно раз, а присваивать - много раз 89
Операторы инкремента и декремента 89
Операторы присваивания 93

Глава 5. Управляющие инструкции 95
Принятие решения с помощью инструкции if 95
Угадайте число 96
Ввод текста с клавиатуры 96
Генерация случайных чисел 98
Инструкция if 98
Двойной знак равенства 100
Блоки 100
Отступы в инструкции if 101
Сломанная вилка (if без else) 101
Условия с операторами сравнения и логическими операторами 102
Сравнение чисел и символов 102
Сравнение объектов 103
Импортируем все за один раз 105
Логические операторы 106
Чем “нуль” отличается от “ничто” 108
Условия в скобках и скобки в условиях 109
Вложение инструкций if 111
Переключатель switch 113
Выбор варианта 113
Не забывайте вставлять break! 115
Строковый аргумент - новинка в Java 7 117

Глава 6. Циклы 119
Цикл while 119
Цикл for 122
Структура цикла for 124
Премьера хита “ Эл под дождем ” 125
Цикл do 126
Считывание одного символа с клавиатуры 129
Манипулирование файлами 130
Объявление переменной в блоке 130

Часть III. Объектно-ориентированное программирование 131

Глава 7. Классы и объекты 133
Определение класса 133
Открытый класс 135
Объявление переменных и создание объектов 135
Инициализация переменной 138
Одна программа - это много классов 139
Определение метода в классе 139
Счет, отображающий сам себя 140
Заголовок метода 141
Передача параметров методу и получение значения от метода 142
Передача значения в метод 144
Значение, возвращаемое методом 145
Как сделать, чтобы числа выглядели красиво 147
Модификаторы доступа 151
Правильный стиль программирования 152
Как сделать поле недоступным 154
Проверка правил с помощью методов доступа 156

Глава 8. Повторное использование кода 157
Определение класса 158
Класс, определяющий служащего 158
Правильное использование класса 159
Создание платежного чека 161
Работа с файлами (небольшое отступление) 162
Хранение данных в файле 162
Копирование и вставка кода 163
Чтение из файла 164
Куда подевался мой файл? 166
Добавление имен папок в имя файла 166
Построчное чтение 167
Наследование 169
Создание производного класса 171
Использование производных классов 174
Соответствие типов 175
Использование класса PartTimeEmployee 176
Переопределение существующих методов 177
Аннотации 179
Вызов методов базовых и производных классов 179

Глава 9. Конструкторы 181
Определение конструктора 181
Что такое температура 182
Что такое температурная шкала 182
Так что же такое температура? 183
Что можно сделать с температурой 185
Поиск нужного конструктора 186
Некоторые вещи никогда не изменяются 189
Конструктор базового класса в производном классе 190
Усовершенствованный класс температуры 190
Конструкторы производных классов 191
Использование усовершенствованного класса температуры 192
Конструктор, выполняемый по умолчанию 193
Конструктор может не только заполнять поля 194
Классы и методы Java AP 196
Аннотация @SuppressWarnings 198

Часть IV. Передовые методики программирования 199

Глава 10. Правильное применение переменных и методов 201
Определение класса 201
Еще один способ сделать числа красивыми 202
Использование класса Player 203
Девять вызовов конструктора 205
Графический интерфейс пользователя 205
Отфутболим исключение другому методу 207
Статические поля и методы 207
Зачем столько статики 209
Статическая инициализация 210
Отображение общей статистики команды 210
Статический импорт 212
Осторожно, статика! 213
Поэкспериментируем с переменными 214
Переменная на своем месте 215
Переменные в разных местах 217
Передача параметров 219
Передача по значению 219
Возвращение результата 221
Передача по ссылке 221
Возвращение объекта из метода 223
Эпилог 224

Глава 11. Массивы и коллекции 225
Как расположить предметы в ряд 225
Создание массива в два этапа 227
Сохранение значений 228
Табулостопы и другие специальные символы 230
Инициализация массива 230
Расширенный цикл for 231
Поиск 233
Массивы объектов 236
Использование класса Room 237
Еще один способ украшения чисел 240
Тернарный условный оператор 241
Аргументы командной строки 241
Использование аргументов командной строки в коде 242
Проверка количества аргументов командной строки 244
Коллекции 245
Классы коллекций 246
Класс ArrayList 247
Использование обобщенных типов 250
Проверка, есть ли еще данные 250

Глава 12. Как сохранить хорошую мину при плохой игре 253
Обработка исключений 254
Параметр блока catch 258
Типы исключений 259
Кто должен перехватить исключение 261
Блок catch с несколькими типами исключений 267
Не будем чрезмерно осторожничать 267
Восстановление работы программы после исключения 268
Наши друзья - хорошие исключения 269
Обработайте исключение или передайте его дальше 270
Блок finally 274
Закрытие файлов 276
Как закрыть файл 276
Ресурсы в заголовке блока try 276

Глава 13. Область видимости 279
Модификаторы доступа к членам классов 280
Классы, доступ и части программы 280
Классы и члены классов 281
Правила доступа к членам класса 281
Пример с рисунком во фрейме 283
Структура папок 285
Создание фрейма 286
Как изменить программу, не изменяя классы 287
Доступ, установленный по умолчанию 289
Как проникнуть в пакет 292
Защищенный доступ 292
Включение не производного класса в тот же пакет 294
Модификаторы доступа к классам 295
Открытые классы 296
Не открытые классы 296

Глава 14. Реагирование на события клавиатуры и мыши 299
Реагирование на щелчок мышью 299
События и обработка событий 301
Интерфейсы Java 302
Потоки 303
Ключевое слово this 304
Тело метода actionPerf ormed () 305
Идентификатор версии 305
Реагирование на другие события 306
Внутренние классы 311

Глава 15. Аплеты 315
Пример простого аплета 315
Выполнение аплета 316
Открытый класс 317
Классы Java API 317
Анимированный аплет 318
Методы, используемые в аплете 319
Содержимое методов аплета 320
Реагирование на события в аплете

Става 16. Соединение с базой данных 325
JDBC и Java DB 325
Создание записей базы данных 326
Использование команд SQL 328
Подключение и отключение базы данных 328
Извлечение данных 330

Часть V. Великолепные десятки 333

Гпава 17. Десять способов избежать ошибок 335
Правильное использование регистра букв 335
Выход из блока switch 336
Сравнение двух значений 336
Добавление элемента в графический интерфейс 336
Добавление приемников событий 337
Определение конструкторов 337
Исправление нестатических ссылок 337
Соблюдение границ массива 337
Указатели на nu 11 338
Помогите виртуальной машине Java найти классы 338

Глава 18. Десять сайтов, посвященных Java 341
Веб-сайты этой книги 341
Сайты Java 341
Новости, обзоры, примеры кодов 342
Работа 342
Сайты для каждого 342

Часть VI. Приложения 343

Приложение А. Установка интегрированной среды разработки 345
Загрузка и установка JDK 345
Загрузка и установка Eclipse 349
Конфигурирование Eclipse 351
Приложение Б. Использование Eclipse 353
Работа с примерами книги 353
Создание собственного проекта 355
Предметный указатель 359

Скачать книгу бесплатно 8,23 мб. djvu

Java для чайников. Видео