Философия java брюс. Вопросы и задания для русскоязычной книги Thinking in Java (Философия Java) Брюса Эккеля. О книге «Философия Java» Брюс Эккель
В марте прошлого года обратился в филиал крупной международной компании в Самаре (да. наглости и амбиций у меня с детства в избытке). Знал на тот момент html, css, java, javascript (основы), pascal, visualbasic6, запросы mysql, php, общее представление: c++. Джаву я не знал вообще. Предложили работу верстальщика, но я отказался. Только программистом! Тогда дали список:
Брюс Эккель Thinking in Java (русский перевод 2го издания или оригинал 4го - прочел и то и другое)
-Стив Макконел - совершенный код.
-Банда четырех - Дизайн паттернов. (это почти азбука ООП)
-иметь максимально четкое представление разницы j2se и j2ee.
в декабре возникла необходимость работы. устроился в мелкую самарскую web-студию. сразу было ясно, что это мошенники, но нужны были любые работы, которые я смог бы показать будущим работодателям. платить не платили(хоть все уши обещаниями проели), но код к стандартам оформления приводили, а главное научили куда смотреть и что искать при ошибках, какие мелочи легко упустить.
Помимо литературы выше прошел курс intuit (сейчас понимаю, что он смехотворен по своему объему, но в принципе основы там есть)
В конце февраля я повторно выслал резюме и получил приглашение пройти собеседование. Всего собеседований оказалось 6 и длились 1.5 месяца. Два из них прошли по видеосвязи с Москвой. Вся картина напоминала кино "Приходите завтра". Но в конце-концов я получил предложение о работе. Договор был составлен на неполную занятость, т.к. на тот момент диплома у меня не было. В прошлом месяце я диплом получил и договор перезаключили на полный рабочий.
Текущая должность Soft-Engeneer. Оклад более чем устраивает. Вчера в связи с переходом на полный рабочий подняли на 30%.
Даже в той жуликовской конторе спрашивали примеры работ. Я предъявил работы, выполненные мною по фрилансу. Даже работы на других языках всегда значительно лучше отсутствия таковых.
Ps: Диплом синий по ФИЗИКЕ. я полностью самоучка, так что все в ваших руках. только еще английский со школы Free у меня (7 часов в неделю был). хотя американец, который к нам приезжал во время своей кругосветки его плохо знает. я еле половину понял из-за его акцента. но это в моем отделе не так критично. вся документация на английском - выучишь даже если не знал)))))
Отдельное спасибо этому форуму. я учился фактически здесь - ежедневно учил все топики, что попадутся)
Философия Java Брюс Эккель
(Пока оценок нет)
Название: Философия Java
О книге «Философия Java» Брюс Эккель
Брюс Эккель – выдающийся программист, автор ряда книг о языка программирования. Его работы быстро стали популярными, поскольку он излагал сложные концепции простым языком. Они помогли многим изучить с нуля программирования и достичь успехов в этой области. За свои работы автор не раз получал награды. Его книги всегда тепло принимали критики, а те, кто хотел глубже изучить разные языки программирования с нетерпением ждали его новой работы. Самой известной книгой автора стала «Философия Java». Она разошлась огромным тиражом и несколько раз переиздавалась. Даже сейчас по прошествии десятилетия эта работа является обязательной к прочтению тем, кто хочет стать профессиональным программистом.
В своей книге «Философия Java» автор раскрывает тайны этого языка программирования. Он советует посмотреть на него, как на нечто живое. Он умело приводит примеры, которые доказывают то, что язык программирования развивается, в него вносятся различные дополнения. С его помощью можно описать любой процесс.
Большинство начинающих программистов не могут понять логику Java. Автор старается доходчиво объяснить читателям, что она есть. Как только они это поймут, будет намного легче начать писать программы, которые не будут давать сбоев и приводить в замешательство специалистов. Благодаря опыту автора легче будет самостоятельно выявить и исправить ошибки, которые часто совершаются программистами. Если глубже изучить и понять язык программирования Java, откроются перспективы, которые ранее казались несбыточными.
Брюс Эккель в пособии «Философия Java» попытался объяснить сложные моменты простым языком. Чтобы читатели не запутались в терминах, он связывает их с природой, повседневными ситуациями. Таким образом, полезная информация быстрее запоминается и остается с человеком навсегда. При возникновении сложных ситуаций он вспоминает историю из книги и использует ее.
Брюс Эккель в книге «Философия Java» постарался передать весь свой опыт, поэтому разложил все по полочкам. Читателям остается только впитать его и использовать в повседневной работе. Благодаря книге можно будет избежать большинства распространенных ошибок и стать отличным программистом. Труд автора помог многим понять, как работает Java, писать отличные программы и совершенствовать программное обеспечение.
На нашем сайте о книгах сайт вы можете скачать бесплатно без регистрации или читать онлайн книгу «Философия Java» Брюс Эккель в форматах epub, fb2, txt, rtf, pdf для iPad, iPhone, Android и Kindle. Книга подарит вам массу приятных моментов и истинное удовольствие от чтения. Купить полную версию вы можете у нашего партнера. Также, у нас вы найдете последние новости из литературного мира, узнаете биографию любимых авторов. Для начинающих писателей имеется отдельный раздел с полезными советами и рекомендациями, интересными статьями, благодаря которым вы сами сможете попробовать свои силы в литературном мастерстве.
Программирование – одна из самых востребованных услуг в сфере IT. Множество людей начало познавать эту нелегкую отрасль и работать в этом направлении. Если читателю всегда было интересно программирование, но он не знал с чего начать, то книга «Философия Java» станет отличным стартовым пособником в этом деле. Автор Брюс Эккель, является настоящим профессионалом в компьютерных технологиях и с помощью понятного изложения, быстро объясняет основные принципы работы с программным кодом.
Язык Java считается одним из самых популярных языков для программирования во всем мире. Это обусловлено высокой гибкостью и возможностью его применения практически в любых сферах, связанных с играми, программным обеспечением и т. д. Книга для начинающих «Философия Java» поможет овладеть главными основами, а также ключевыми понятиями, что позволяет сделать превосходную базу для более глубокого и совершенного изучения науки программирования. Брюс Эккель проделал поистине колоссальный труд, приводя сотни живых примеров и досконально разъясняя все ключевые моменты в ходе своей книги. С помощью данного пособника любой пользователь, который хочет научиться языку Java, сможет заложить отличную базу знаний и, уже опираясь на них, начать углубленное изучение.
Автор рекомендует читать свою книгу всем новичкам и людям, которые только начали заниматься простейшим программированием на языке Java. «Философия Java» - это пособие по быстрому и качественному обучению азам работы с Java. В книге уделяется внимание всем мелочам, а также тонкостям, начиная интерфейсом и основными настройками, и заканчивая сложными комбинациями и приемами, которые показываются на реальном примере с использованием команд и понятных кодов с комментариями автора.
Брюс Эккель поможет обратить особое внимание на основное предназначение и философию использования Java для работы, бизнеса и других сфер. Также автор показывает множество примеров проблем, рассказывает про причины их возникновения и основные методы устранения неполадок в программном коде. Специалисты, работающие в сфере программирования, высоко оценили книгу «Философия Java», ведь она является развивающим учебником, который поможет узнать лучше язык Java. Хоть это и является специализированной литературой, ее гораздо проще читать, чем другие книги аналогичного направления
На нашем литературном сайте сайт вы можете скачать книгу «Философия Java» Брюс Эккель бесплатно в подходящих для разных устройств форматах - epub, fb2, txt, rtf. Вы любите читать книги и всегда следите за выходом новинок? У нас большой выбор книг самых разных жанров: классика, современная фантастика, литература по психологии и детские издания. К тому же мы предлагаем интересные и познавательные статьи для начинающих писателей и всех тех, кто хочет научиться красиво писать. Каждый наш посетитель сможет найти для себя что-то полезное и увлекательное.
Чтобы изменить документ по умолчанию, отредактируйте файл "blank.fb2" вручную.
Предисловие 13
Java SE5 и SE6 14
Благодарности 14
Глава 1. Введение в объекты 17
Развитие абстракции 18
Объект имеет интерфейс 20
Объект предоставляет услуги 22
Скрытая реализация 23
Повторное использование реализации 24
Наследование 25
Взаимозаменяемые объекты и полиморфизм 29
Однокорневая иерархия 33
Контейнеры 33
Параметризованные типы 35
Создание, использование объектов и время их жизни 36
Обработка исключений: борьба с ошибками 38
Параллельное выполнение 38
Java и Интернет 39
Глава 2. Все является объектом 48
Все объекты должны создаваться явно 49
Объекты никогда не приходится удалять 53
Создание новых типов данных 54
Методы, аргументы и возвращаемые значения 56
Создание программы на Java 58
Ключевое слово static 60
Наша первая программа на Java 61
Комментарии и встроенная документация 64
Стиль оформления программ 70
Глава 3. Операторы 71
Простые команды печати 71
Операторы Java 72
Литералы 82
В Java отсутствует sizeof() 92
Резюме 100
Глава 4. Управляющие конструкции 101
Синтаксис foreach 105
break и continue 108
Нехорошая команда goto 109
Резюме 115
Глава 5. Инициализация и завершение 116
Конструктор гарантирует инициализацию 116
Перегрузка методов 118
Очистка: финализация и сборка мусора 130
Инициализация членов класса 137
Инициализация конструктором 140
Инициализация массивов 146
Резюме 151
Глава 6. Управление доступом 152
Пакет как библиотечный модуль 153
Спецификаторы доступа Java 159
Интерфейс и реализация 163
Доступ к классам 164
Резюме 167
Глава 7. Повторное использование классов 169
Синтаксис композиции 170
Синтаксис наследования 172
Делегирование 176
Сочетание композиции и наследования 178
Композиция в сравнении с наследованием 184
Восходящее преобразование типов 186
Ключевое слово final 188
Резюме 197
Глава 8. Полиморфизм 198
Снова о восходящем преобразовании. . . > 199
Особенности 201
Конструкторы и полиморфизм 208
Ковариантность возвращаемых типов 216
Разработка с наследованием 217
Резюме 220
Глава 9. Интерфейсы 221
Абстрактные классы и методы 221
Интерфейсы 224
Отделение интерфейса от реализации 227
Расширение интерфейса через наследование 233
Интерфейсы как средство адаптации 236
Вложенные интерфейсы 239
Интерфейсы и фабрики 242
Резюме 244
Глава 10. Внутренние классы 245
Создание внутренних классов 245
Связь с внешним классом 246
Конструкции.this и.new 248
Внутренние классы и восходящее преобразование 249
Безымянные внутренние классы 253
Внутренние классы: зачем? 261
Наследование от внутренних классов 272
Можно ли переопределить внутренний класс? 272
Локальные внутренние классы 274
Резюме 276
Глава 11. Коллекции объектов 277
Параметризованные и типизованные контейнеры 277
Основные концепции 280
Добавление групп элементов 281
Итераторы 288
Множество 294
Очередь 298
PriorityQueue 299
Collection и Iterator 301
Идиома «метод-адаптер» 306
Резюме 309
Глава 12. Обработка ошибок и исключения 310
Основные исключения 310
Перехват исключений 312
Создание собственных исключений 314
Спецификации исключений 319
Перехват произвольных исключений 320
Стандартные исключения Java 328
Завершение с помощью finally 330
Использование finally с return 334
Ограничения при использовании исключений 336
Конструкторы 339
Идентификация исключений 343
Альтернативные решения 344
Резюме 351
Глава 13. Информация о типах 352
Необходимость в динамическом определении типов (RTTI) 352
Регистрация фабрик 372
Рефлексия: динамическая информация о классе 376
Динамические посредники 380
Объекты с неопределенным состоянием 384
Интерфейсы и информация о типах 390
Резюме 394
Глава 14. Параметризация 397
Простая параметризация 398
Параметризованные интерфейсы 404
Параметризованные методы 407
Построение сложных моделей 419
Ограничения 437
Метасимволы 440
Резюме 452
Глава 15. Массивы 454
Особенности массивов 454
Массив как объект 456
Возврат массива 458
Многомерные массивы 460
Массивы и параметризация 463
Создание тестовых данных 465
Создание массивов с использованием генераторов 470
Вспомогательный инструментарий Arrays 474
Резюме 482
Глава 16. Система ввода/вывода Java 483
Класс File 484
Ввод и вывод 489
Добавление атрибутов и интерфейсов 491
Классы Reader и Writer 494
RandomAccessFile: сам по себе 497
Типичное использование потоков ввода/вывода 498
Средства чтения и записи файлов 505
Стандартный ввод/вывод 507
Новый ввод/вывод (nio) 510
Сжатие данных 531
Сериализация объектов 536
Предпочтения 553
Резюме 555
Глава 17. Параллельное выполнение 557
Класс Thread 559
Исполнители 561
Совместное использование ресурсов 578
Взаимодействие между потоками 598
Взаимная блокировка 602
Новые библиотечные компоненты 607
CountDownLatch 607
CyclicBarrier 609
PriorityBlockingQueue 614
Семафоры 619
Моделирование 624
Резюме 629
Алфавитный указатель 631
Введение в объекты
Мы препарируем природу, преобразуем ее в концепции и приписываем им смысл так, как мы это делаем во многом, потому что все мы являемся участниками соглашения, которое имеет силу в обществе, связанном речью, и которое закреплено в структуре языка... Мы не можем общаться вовсе, кроме как согласившись с установленными этим соглашением организацией и классификацией данных.
Бенджамин Ли Ворф (1897-1941)
Возникновением компьютерной революции мы обязаны машине. Поэтому наши языки программирования стараются быть ближе к этой машине.
Но в то же время компьютеры не столько механизмы, сколько средства уси¬ления мысли («велосипеды для ума», как любит говорить Стив Джобе), и еще одно средство самовыражения. В результате инструменты программирования все меньше склоняются к машинам и все больше тяготеют к нашим умам, также как и к другим формам выражения человеческих устремлений, как-то: литера¬тура, живопись, скульптура, анимация и кинематограф. Объектно-ориентиро- ванное программирование (ООП) - часть превращения компьютера в средство самовыражения.
Эта глава познакомит вас с основами ООП, включая рассмотрение основ¬ных методов разработки программ. Она, и книга вообще, подразумевает нали¬чие у вас опыта программирования на процедурном языке, не обязательно С. Если вам покажется, что перед прочтением этой книги вам не хватает познаний в программировании и синтаксисе С, воспользуйтесь мультимедийным семина¬ром Thinking in С, который можно загрузить с сайта
Как я понимаю на русском языке "Философия Java" Брюса Эккеля представлена в 6 видах (если не считать совсем старых изданий) :
spoiler
1. Брюс Эккель. Философия Java. Перевод с 3-его "английского" издания. Ориг.название "Thinking in
Java". Издательство Питер. Количество страниц 976. Год выпуска 2003. Книга посвящена java 1.4.
Вроде не совсем полное издание (а может и полное), но с нормальным переводом.
2. Брюс Эккель. Философия Java. Перевод с 4-его "английского" издания. Ориг.название Thinking in Java.
Количество страниц 640. Год выпуск 2009. Издательство Питер. Обрезанное в 2 раза издание с
3. Брюс Эккель. Философия Java. Перевод с 4-его "английского" издания. Ориг.название Thinking in Java.
Количество страниц 640. Год выпуск 2011. Издательство Питер. Обрезанное в 2 раза издание с
ужасным переводом. Книга посвящена java 1.5.
4. Брюс Эккель. Философия Java. Перевод с 4-его "английского" издания. Ориг.название Thinking in Java.
Количество страниц 640. Год выпуск 2013. Издательство Питер. Обрезанное в 2 раза издание с
ужасным переводом. Книга посвящена java 1.5.
5. Брюс Эккель - Философия Java. Перевод с 4-го "английского" издания. Год издания - 2015.
Издательство "Питер". Количество страниц - 1165. Книга посвящена java 1.5. Так называемое полное
издание. Вроде перевод не очень.
6. Брюс Эккель - Философия Java. Перевод с 4-го "английского" издания. Год издания - 2017.
Количество страниц 1168. Перевод хороший. Книга посвящена java 1.5.
7. Двухтомник по Core Java: Java Библиотека профессионала. Кей С. Хорстманн, Гари Корнелл.
Том 1: Основы. Том 2: Расширенные средства программирования. Год выпуска 2014-2015 (девятое
издание, java 1.7). До девятого издания включительно этот двухтомник выходил под авторством Кей С.
Хорстманн и Гари Корнелл, потом его стал издавать только Кей С. Хорстманн.
8. Тот же двухтомник, но под авторством Кей С. Хорстманна. Том 1: Основы. Том 2: Расширенные средства
программирования. Год выпуска 2017 (десятое издание, java 1.8).
Также у Хорстманна есть 2 маленькие книжки (продолжаю нумерацию):
9. Java SE 8. Базовый курс. Ориг.название Core Java for the Impatient. Кей С. Хорстманн, 464 стр., 2016.
10. Java SE 8. Вводный курс. Java SE 8 for the Really Impatient. Кей С. Хорстманн, 208 стр., 2014.
Поправьте, если я не прав или что-то упустил касаемо вышеуказанных книг. Что можете сказать хорошего/плохого об этих книгах? Что читать, а что не стоит? Какие еще книги по Java можно почитать (на русском или английском)? Огласите весь список, пожалуйста.