18 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Блох Джошуа. Java. Эффективное программирование, 2-е издание. В открытом доступе

Java™. Эффективное программирование

О книге «Java™. Эффективное программирование»

Вы ищете лаконичную книгу, где есть прозрение и мудрость, которых больше нигде не найти? Хотите лучше освоить язык программирования Java™, чтобы код, написанный вами, был правильным, понятным и пригодным для многократного использования? Ваши поиски увенчались успехом! Книга, которую вы держите в руках, даст вам это и многое другое, что вы так долго искали. Книга «Java™. Эффективное программирование», содержащая пятьдесят семь ценных правил, предлагает решение задач программирования, с которыми большинство разработчиков сталкиваются каждый день. Всесторонне описывая приемы, которыми пользуются эксперты, создававшие платформу Java, эта книга показывает, что следует делать, а чего делать не следует для получения понятного, надежного и эффективного программного кода. Каждое правило, представленное в виде короткого законченного эссе, содержит описание проблемы, примеры программного кода, а также случаи из практики этого необычайно компетентного автора. В эссе включены специальные советы, обсуждение тонкостей языка Java, для иллюстрации выбраны превосходные примеры программ. На протяжении всей книги критически оцениваются распространенные идиомы языка Java и шаблоны разработки, даются полезные советы и методики. Книга включает в себя: Описание общепринятых и эффективных приемов работы с языком Java, изобилующее советами эксперта, которые представлены в лаконичной, удобочитаемой и доступной форме Шаблоны, антишаблоны и идиомы, помогающие извлечь из платформы Java максимальную пользу Особенности языка Java и его библиотек, которые обычно имеют неправильное толкование: как избежать ловушек и подводных камней Детальный обзор механизма сериализации, в том числе практические советы, которых больше нигде не найти Язык Java и его самые основные библиотеки: java.lang, java.util и java.io Привлекательная для широкого круга программистов, книга «Java™. Эффективное программирование» дает наиболее практичные и авторитетные рекомендации, которые можно использовать для написания эффективных, качественно спроектированных программ для рассматриваемой платформы.

На нашем сайте можно скачать книгу «Java™. Эффективное программирование» в формате fb2, rtf, epub, pdf, txt или читать онлайн. Здесь так же можно перед прочтением обратиться к отзывам читателей, уже знакомых с книгой, и узнать их мнение. В интернет-магазине нашего партнера вы можете купить и прочитать книгу в бумажном варианте.

Java. Эффективное программирование, 2-е издание


Автор: Блох Джошуа
Год: 2014
ISBN: 978-5-85582-348-6
Страниц: 461
Язык: Русский
Формат: PDF
Размер: 25 Мб

В книге Java. Эффективное программирование содержится пятьдесят семь правил. Предлагаются решения задач программирования, с которыми часто приходится сталкиваться разработчикам. Джошуа Блох детально описывает приемы, которые используют эксперты, создававшие платформу Java. Объясняет, что нужно делать, а что делать не следует, для получения надежного, эффективного и понятного программного кода.
Каждое правило представлено в виде лаконичного законченного эссе. Дается описание проблемы, примеры программного кода, случаи из практики самого автора, Джошуа Блоха. В эссе входят специальные рекомендации, обсуждение различных аспектов языка Java. В качестве иллюстрации выбраны лучшие примеры программ. Дана оценка распространенных идиом языка Java, шаблоны разработки, полезные советы и методики.

Читать еще:  Дистанционное выключение и погружение в сон компьютера

Технология, известная как перечислимый шаблон int, обладает многими недостатками. Она не обеспечивает безопасность типов и не очень удобна. Компилятор не будет жаловаться, если вы передадите яблоко методу, который ожидает апельсин, сравните яблоки с апельсинами оператором == или хуже:

// Вкусный цитрусовый приправлен яблочным соусом!

int i = (APPLE.FUJI – ORANGE_TEMPLE) / APPLE.PIPPIN;

Обратите внимание, что название каждой константы яблока содержит префикс APPLE__ и что название каждой константы апельсина содержит 0RANGE_. Это потому, что Java не предоставляет пространства имен для перечислимых групп int. Префиксы препятствуют совпадению имен, если две перечислимые группы int будут иметь константы с одинаковыми названиями.

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

Нет легкого способа перевести перечислимые константы в печатаемые строки. Если вы напечатаете такую константу или отобразите ее в отладчике, все, что вы увидите, — это число, что не очень поможет. Нет надежного способа выполнить итерацию перечислимых констант в группе или даже получить размер перечислимой группы int.

Вы можете столкнуться с вариантом шаблона, в котором константы String используются вместо констант int. Этот вариант, известный как перечислимый шаблон String, желательно еще меньше использовать.

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

К счастью, в версии 1.5 язык дает нам альтернативу, которая помогает избежать недостатков перечислимых шаблонов int и string и предлагает ряд дополнительных преимуществ. Это перечислимые типы [JLS, 8.9]. Вот как они выглядят в простейшей форме:

public enum Apple

public enum Orange

При поверхностном взгляде может показаться, что перечислимые типы похожи на свои аналоги в других языках, таких как С, C++ , и C# , но это сходство обманчиво. Перечислимые типы Java — это полноценные классы, обладающие большими возможностями, чем их аналоги в других языках, где перечислимые типы являются по сути значениями int.

Читать еще:  Лучшие эмуляторы Android для компьютера

Основная идея перечислимых типов в Java проста: они являются классами, которые экспортируют один экземпляр каждой перечислимой константы, используя открытое статическое завершенное поле. Перечислимые типы являются абсолютно завершенными благодаря тому, что у них нет конструкторов. Клиенты не могут ни создавать экземпляры перечислимых типов, ни расширять их, не создаются никакие другие экземпляры, кроме декларированных перечислимых констант. Другими словами, перечислимые типы подвергаются контролю создания экземпляров. Они являются обобщением синглтона (статья 3), являясь по сути одним перечислимым элементом. Для читателей, знакомых с первой редакцией этой книги, перечислимые типы предоставляют лингвистическую поддержку безопасных перечислимых шаблонов [BlochOl, статья 21].

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

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

В дополнение к тому, что перечислимые типы позволяют нам избавиться от недостатков перечислимых шаблонов int, они позволяют нам добавлять произвольные методы и поля, а также реализовывать произвольные интерфейсы. Они предлагают высококачественные реализации всех методов Object (глава 11), а их сериализованная форма сделана так, чтобы перенести большую часть изменений в перечислимых типах.

Так зачем нам добавлять методы или поля к перечислимым типам? Например, вы можете захотеть ассоциировать данные с их константами. Наши типы Apple или Orange, например, могут извлечь выгоду из метода, который вернет цвет фрукта или его изображение. Вы можете присвоить аргументы перечислимому типу с помощью любого подходящего метода. Перечислимый тип может начать жизнь, как простая коллекция перечислимых констант и развивается со временем в полноценную абстракцию.

«Java. Эффективное программирование» Джошуа Блох

Напишите программу на JAVA:которая в строке «а роза упала на лапу азора» находит символ «У» и печатает символы строки до следующего символа «у»
Помогите пожалуйста решить 1) Напишите программу на JAVA:которая в строке "а роза упала на лапу.

Exception in thread «main» java.lang.NoClassDefFoundError:c:HelloWorldApp/java
Exception in thread ‘main’ java.lang.NoClassDefFoundError:c:HelloWorldApp/java вот это выходит.

Ошибка при установке Java: «Could not create the Java Virtual Machine»
НЕ могу установить джаву при конце установке вылетает ошибка Could not create the Java Virtual.

Читать еще:  Как открыть системную папку на iphone 4s?

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

Mazhor1, ещё раз спасибо

пока сам не почитаю, спорить не буду.

Кстати, Mecid, мож тему про литературу зафиксировать? и пополнять постепенно список, того и глядишь библиотека наберётся. У новичком вопросов меньше будет
Это я к слову так.

Если книга еще актуальна, выложил в теме «Литература по Java»

1-ое издание (2002 год) на русском, а также 2-ое издание (2008 год) на английском.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Minecraft «Java, could not create the java virtual machine» [2]!
Всё что можно было найти в Google или Яндексе я пробовал. Компьютер: Core i5, 4 Гб оперативки.

Minecraft «Java, could not create the java virtual machine» [3]!
Вновь поднимаю тему так как столкнулся с той же проблемой, и дело не в пиратском майне, мне java.

Minecraft, «Java, could not create the java virtual machine»
Обычна проблема — "Java, could not create the java virtual machine", всё что можно было найти в.

Как понять «код должен быть совместим с Java 1.1»?
Дали задание написать маленькую программку на java, в конце задания написано "исходный код должен.

Литература Java. Эффективное программирование. 2-е издание

RoBot

Moderator

Java. Эффективное программирование. 2-е издание

Второе издание известной книжки » java. Эффективное программирование «, содержащее семьдесят восемь правил, предлагает решение задач программирования, с которыми большинство разработчиков сталкиваются каждый день. Это давно ожидаемое издание классической книги, которая была полностью переработана, для того чтобы учесть особенности java se 5 и java se 6.

Название: Java. Эффективное программирование. 2-е издание

Год издания: 2014

Автор: Джошуа Блох

Количество страниц: 446

Похожие темы

  • Автор: SliwKa
  • Суббота в 14:17
  • Ответы: 0

  • Автор: RoBot
  • Пятница в 05:20
  • Ответы: 0

  • Автор: RoBot
  • 20 Май 2020
  • Ответы: 0

  • Автор: RoBot
  • 20 Май 2020
  • Ответы: 0

  • Автор: SliwBoy
  • 11 Апр 2019
  • Ответы: 0

О нас

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

Sliwbl.Biz регулярно публикует:

  • различные обучающие курсы и инфопродукты от известных бизнес тренеров и коучей;
  • тренинги, вебинары и мануалы от популярных авторов на тему саморазвития;
  • видео уроки, книги и обучения по дизайну, продвижению и созданию сайтов, программированию, бизнесу и другим популярным напрпавлениям

Мы ежедневно добавляем новые темы и свежие сливы складчин на форум, чтобы у Вас всегда под рукой была библиотека для освоения новой информации и развития.

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector