Посоветуйте книгу для освоения java с нуля("Философия java" - пойдет ли?). Имею "опыт" в программировании на C# и delphi(ну и pascal соответственно). Но оба языка практически забыл, т.к. изучали их 2.5 года назад и больше к программированию я не притрагивался(даже что такое массив забыл). Да и практика у нас была не ахти(в основном решили математические задачки, диффуры и интегральные уравнения, в этом состояла вся практика). Уже давно решил, что буду работать в этой области(разработчиком ПО,т.к. это является мои интересом, да и с математикой я дружу, так же как и с логикой - без этого ведь по сути успешным программистом не стать), но до рук дело никак не доходило(учеба не позволяла). Недавно вроде как нашел время и хочу погрузиться в это "дело" с головой. Сам сейчас смотрю курс " Специалист - Объектно ориентированное программирование и БД". Смотрю для того, чтобы понимать что есть ООП, ибо теории у нас в универе было мало(специальность не та - радиофизика), сразу начали изучать языки не вникая в историю их создания и терминологию. И ваше мнение - математики у нас уже нет, и было не так много по большому счету - математический анализ, теор. вероятностей, аналитическая геометрия, и еще что-то было, но что именно уже не помню. В общем попутно задам еще один вопрос - стоит ли вспоминать вышку? Или программисту в первую очередь необходимо знать Булеву алгебру, дискретную математику и комбинаторику? Это как раз все то, чего у нас не было. И почему я затронул тему о математике - пожалуй потому, что цель у меня стать не быдло-кодером или кулхацкером, а проф. программистом(хотелось бы через 2-3 года уже работать по этому направлению, то бишь разработчиком ПО). P.S., Направьте на верную тропу, с чего вообще мне начать, какие книги читать и т.д. и т.п. Буду благодарен =) И выбрал язык Java, т.к. эта весьма перспективная вещь, по крайней мере на то время, пока существует андроид. Сам хочу в дальнейшем пробовать писать приложения под эту платформу. И вообще я примерно представляю какие именно приложения я бы хотел создавать в дальнейшем, например: видео/аудио-плееры, графические/текстовые редакторы, браузер(хотелось бы попробовать чисто для себя), архиватор(вот тут ведь математика как я понимаю будет нужна? для создания алгоритма сжатия), торрент-клиент, клиент для обмена текстовыми сообщениями, и "обменом" голосом(аля Skype). Это примерный набросок. И мне интересно, для каких из этих приложений потребуются какие-либо дополнительные знания? И какая область(вернее даже раздел) математики потребуется для создания кодировщика и архиватора?
Шилдта можно (Java - полное руководство) ---------- Сообщение добавлено 28.01.2013 19:44 ---------- теоретическая информатика, криптография... http://www.intuit.ru/department/calculate/infotheory/4/