C какого языка программирования начать. Разные языки программирования и их области применения. Лекция в Яндексе
- Нет, - говорю, - не хочу.
- Ну ок, учи Perl.
C++
На JavaScript
Java
Python
Perl
добро пожаловать
«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.
Первый день. Самокатная, шумная столовая кислотных расцветок, обед. Суп из пластмассовых прямоугольных параллелепипедов.
- Хочешь писать на С++? - спрашивают меня.
- Нет, - говорю, - не хочу.
- Ну ок, учи Perl.
С тех пор я пишу на Perl и нежно его люблю».
Такую историю рассказал нам разработчик Яндекса, когда мы готовили эту публикацию и проводили опрос. Мы спрашивали у наших разработчиков, на чём они пишут, чтобы выяснить - какие языки программирования в Яндексе самые популярные. В опросе приняли участие больше половины разработчиков компании, расклад получился такой:
Многие разработчики используют в работе несколько языков, поэтому мы просили их выбрать один - тот, на котором они пишут больше всего. В лидерах оказались пять языков: C++, JavaScript, Java, Python и Perl. Все эти языки разные, и каждый лучше решает свою задачу. Поэтому они по-разному используются в Яндексе.
C++ - классический язык для больших и сложных систем, где критически важна производительность. На нём обычно пишутся самые важные, базовые компоненты приложений. Например, на C++ написано ядро поиска Яндекса, Браузер и Карты.
На JavaScript в основном пишут интерактивные элементы сайтов, такие как анимация или браузерные игры. Этот язык очень широко используется в браузерах для написания интерфейсов - того, с чем напрямую взаимодействуют пользователи. На JavaScript написаны веб-интерфейсы всех сервисов Яндекса.
Java - это универсальный язык, на котором можно написать любое приложение, будь то игра Flappy Bird или веб-сервер, обрабатывающий миллионы запросов в минуту. Несмотря на название имеет мало общего с JavaScript. Разработка на нём пойдёт быстрее, чем на C++, однако программа может получиться чуть медленнее. Особенности Java позволяют создавать программы, которые работают практически на любом устройстве - от телефона до микроволновки. На Java у нас написаны, например, Маркет и Музыка.
Python - это дружелюбный к программисту язык с простым синтаксисом. С него хорошо начинать изучение программирования. У нас Python широко используется в системном администрировании, но подходит для решения почти любых задач, кроме обработки больших объёмов данных. На Python многое делать проще и быстрее, чем на C++, но программа будет не такой производительной. Это разумный выбор, когда производительность не очень важна или задачу нужно сделать быстро. На Python написана серверная часть Диска, а ещё он используется в Директе, внутренних сервисах и многих других проектах.
Perl был создан для обработки текстов - например, для извлечения фактов из текста. Талисман языка - верблюд, лишённый изящества, но выносливый и эффективный, - точно отражает его особенности. Это лаконичный, но непростой язык, который, однако, хорошо решает свою задачу. В Яндексе его используют, например, для анализа данных в баннерной системе и в разработке серверной части некоторых сервисов - например, Директа.
С точки зрения задачи выбор языка - это поиск равновесия между эффективностью программы, квалификацией программиста и временем, потраченным на работу. Конечно, в реальности всё немного сложнее, поэтому иногда и случаются истории вроде той, с которой мы начали. «Шёл на вакансию C++, взяли на Perl, пишу на Python, а люблю Scala», - такое тоже бывает.
С точки зрения разработчика, выбор языка - это вопрос предпочтений. Кому-то действительно нравится сам язык, кому-то - задачи, которые он решает. Например, одни предпочитают фундаментальные задачи и пишут базу поиска на C++, а другие любят делать то, что видно пользователям, и пишут интерфейсы на JavaScript. Третьи пишут на каком-то языке просто потому, что знают его досконально. А некоторые, наоборот, готовы пробовать новое и участвуют в разных проектах.
Яндекс делают более шести тысяч человек, из них четверть - это разработчики. По большому счёту неважно, на каком языке пишет человек. Если он профессионал, для него всегда найдётся подходящая задача. Прямо сейчас у нас открыто 90 вакансий для разработчиков в десяти городах. Хотите попробовать свои силы - добро пожаловать (вакансии в берлинском офисе можно посмотреть ).
","contentType":"text/html"},"proposedBody":{"source":"
«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.
Первый день. Самокатная, шумная столовая кислотных расцветок, обед. Суп из пластмассовых прямоугольных параллелепипедов.
- Хочешь писать на С++? - спрашивают меня.
- Нет, - говорю, - не хочу.
- Ну ок, учи Perl.
С тех пор я пишу на Perl и нежно его люблю».
Такую историю рассказал нам разработчик Яндекса, когда мы готовили эту публикацию и проводили опрос. Мы спрашивали у наших разработчиков, на чём они пишут, чтобы выяснить - какие языки программирования в Яндексе самые популярные. В опросе приняли участие больше половины разработчиков компании, расклад получился такой:
Многие разработчики используют в работе несколько языков, поэтому мы просили их выбрать один - тот, на котором они пишут больше всего. В лидерах оказались пять языков: C++, JavaScript, Java, Python и Perl. Все эти языки разные, и каждый лучше решает свою задачу. Поэтому они по-разному используются в Яндексе.
C++ - классический язык для больших и сложных систем, где критически важна производительность. На нём обычно пишутся самые важные, базовые компоненты приложений. Например, на C++ написано ядро поиска Яндекса, Браузер и Карты.
На JavaScript в основном пишут интерактивные элементы сайтов, такие как анимация или браузерные игры. Этот язык очень широко используется в браузерах для написания интерфейсов - того, с чем напрямую взаимодействуют пользователи. На JavaScript написаны веб-интерфейсы всех сервисов Яндекса.
Java - это универсальный язык, на котором можно написать любое приложение, будь то игра Flappy Bird или веб-сервер, обрабатывающий миллионы запросов в минуту. Несмотря на название имеет мало общего с JavaScript. Разработка на нём пойдёт быстрее, чем на C++, однако программа может получиться чуть медленнее. Особенности Java позволяют создавать программы, которые работают практически на любом устройстве - от телефона до микроволновки. На Java у нас написаны, например, Маркет и Музыка.
Python - это дружелюбный к программисту язык с простым синтаксисом. С него хорошо начинать изучение программирования. У нас Python широко используется в системном администрировании, но подходит для решения почти любых задач, кроме обработки больших объёмов данных. На Python многое делать проще и быстрее, чем на C++, но программа будет не такой производительной. Это разумный выбор, когда производительность не очень важна или задачу нужно сделать быстро. На Python написана серверная часть Диска, а ещё он используется в Директе, внутренних сервисах и многих других проектах.
Perl был создан для обработки текстов - например, для извлечения фактов из текста. Талисман языка - верблюд, лишённый изящества, но выносливый и эффективный, - точно отражает его особенности. Это лаконичный, но непростой язык, который, однако, хорошо решает свою задачу. В Яндексе его используют, например, для анализа данных в баннерной системе и в разработке серверной части некоторых сервисов - например, Директа.
С точки зрения задачи выбор языка - это поиск равновесия между эффективностью программы, квалификацией программиста и временем, потраченным на работу. Конечно, в реальности всё немного сложнее, поэтому иногда и случаются истории вроде той, с которой мы начали. «Шёл на вакансию C++, взяли на Perl, пишу на Python, а люблю Scala», - такое тоже бывает.
С точки зрения разработчика, выбор языка - это вопрос предпочтений. Кому-то действительно нравится сам язык, кому-то - задачи, которые он решает. Например, одни предпочитают фундаментальные задачи и пишут базу поиска на C++, а другие любят делать то, что видно пользователям, и пишут интерфейсы на JavaScript. Третьи пишут на каком-то языке просто потому, что знают его досконально. А некоторые, наоборот, готовы пробовать новое и участвуют в разных проектах.
Яндекс делают более шести тысяч человек, из них четверть - это разработчики. По большому счёту неважно, на каком языке пишет человек. Если он профессионал, для него всегда найдётся подходящая задача. Прямо сейчас у нас открыто 90 вакансий для разработчиков в десяти городах. Хотите попробовать свои силы - добро пожаловать (вакансии в берлинском офисе можно посмотреть ).
«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.
Первый день. Самокатная, шумная столовая кислотных расцветок, обед. Суп из пластмассовых прямоугольных параллелепипедов.
- Хочешь писать на С++? - спрашивают меня.
- Нет, - говорю, - не хочу.
- Ну ок, учи Perl.
С тех пор я пишу на Perl и нежно его люблю».
Такую историю рассказал нам разработчик Яндекса, когда мы готовили эту публикацию и проводили опрос. Мы спрашивали у наших разработчиков, на чём они пишут, чтобы выяснить - какие языки программирования в Яндексе самые популярные. В опросе приняли участие больше половины разработчиков компании, расклад получился такой:
Многие разработчики используют в работе несколько языков, поэтому мы просили их выбрать один - тот, на котором они пишут больше всего. В лидерах оказались пять языков: C++, JavaScript, Java, Python и Perl. Все эти языки разные, и каждый лучше решает свою задачу. Поэтому они по-разному используются в Яндексе.
C++ - классический язык для больших и сложных систем, где критически важна производительность. На нём обычно пишутся самые важные, базовые компоненты приложений. Например, на C++ написано ядро поиска Яндекса, Браузер и Карты.
На JavaScript в основном пишут интерактивные элементы сайтов, такие как анимация или браузерные игры. Этот язык очень широко используется в браузерах для написания интерфейсов - того, с чем напрямую взаимодействуют пользователи. На JavaScript написаны веб-интерфейсы всех сервисов Яндекса.
Java - это универсальный язык, на котором можно написать любое приложение, будь то игра Flappy Bird или веб-сервер, обрабатывающий миллионы запросов в минуту. Несмотря на название имеет мало общего с JavaScript. Разработка на нём пойдёт быстрее, чем на C++, однако программа может получиться чуть медленнее. Особенности Java позволяют создавать программы, которые работают практически на любом устройстве - от телефона до микроволновки. На Java у нас написаны, например, Маркет и Музыка.
Python - это дружелюбный к программисту язык с простым синтаксисом. С него хорошо начинать изучение программирования. У нас Python широко используется в системном администрировании, но подходит для решения почти любых задач, кроме обработки больших объёмов данных. На Python многое делать проще и быстрее, чем на C++, но программа будет не такой производительной. Это разумный выбор, когда производительность не очень важна или задачу нужно сделать быстро. На Python написана серверная часть Диска, а ещё он используется в Директе, внутренних сервисах и многих других проектах.
Perl был создан для обработки текстов - например, для извлечения фактов из текста. Талисман языка - верблюд, лишённый изящества, но выносливый и эффективный, - точно отражает его особенности. Это лаконичный, но непростой язык, который, однако, хорошо решает свою задачу. В Яндексе его используют, например, для анализа данных в баннерной системе и в разработке серверной части некоторых сервисов - например, Директа.
С точки зрения задачи выбор языка - это поиск равновесия между эффективностью программы, квалификацией программиста и временем, потраченным на работу. Конечно, в реальности всё немного сложнее, поэтому иногда и случаются истории вроде той, с которой мы начали. «Шёл на вакансию C++, взяли на Perl, пишу на Python, а люблю Scala», - такое тоже бывает.
С точки зрения разработчика, выбор языка - это вопрос предпочтений. Кому-то действительно нравится сам язык, кому-то - задачи, которые он решает. Например, одни предпочитают фундаментальные задачи и пишут базу поиска на C++, а другие любят делать то, что видно пользователям, и пишут интерфейсы на JavaScript. Третьи пишут на каком-то языке просто потому, что знают его досконально. А некоторые, наоборот, готовы пробовать новое и участвуют в разных проектах.
Яндекс делают более шести тысяч человек, из них четверть - это разработчики. По большому счёту неважно, на каком языке пишет человек. Если он профессионал, для него всегда найдётся подходящая задача. Прямо сейчас у нас открыто 90 вакансий для разработчиков в десяти городах. Хотите попробовать свои силы - добро пожаловать (вакансии в берлинском офисе можно посмотреть ).
","contentType":"text/html"},"authorId":"5105614","slug":"77617","canEdit":false,"canComment":false,"isBanned":false,"canPublish":false,"viewType":"old","isDraft":false,"isSubscriber":false,"commentsCount":36,"modificationDate":"Wed Mar 19 2014 15:04:00 GMT+0000 (UTC)","showPreview":true,"approvedPreview":{"source":"«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.","html":"«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.","contentType":"text/html"},"proposedPreview":{"source":"«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.","html":"«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.","contentType":"text/html"},"titleImage":null,"tags":[{"displayName":"технологии Яндекса","slug":"tekhnologii-yandeksa","categoryId":"150002777","url":"/blog/company??tag=tekhnologii-yandeksa"},{"displayName":"yandex-team","slug":"yandex-team","categoryId":"1776655","url":"/blog/company??tag=yandex-team"}],"isModerator":false,"commentsEnabled":true,"url":"/blog/company/77617","urlTemplate":"/blog/company/%slug%","fullBlogUrl":"https://yandex.ru/blog/company","addCommentUrl":"/blog/createComment/company/77617","updateCommentUrl":"/blog/updateComment/company/77617","addCommentWithCaptcha":"/blog/createWithCaptcha/company/77617","changeCaptchaUrl":"/blog/api/captcha/new","putImageUrl":"/blog/image/put","urlBlog":"/blog/company","urlEditPost":"/blog/562884407eba6ef16f8045c3/edit","urlSlug":"/blog/post/generateSlug","urlPublishPost":"/blog/562884407eba6ef16f8045c3/publish","urlUnpublishPost":"/blog/562884407eba6ef16f8045c3/unpublish","urlRemovePost":"/blog/562884407eba6ef16f8045c3/removePost","urlDraft":"/blog/company/77617/draft","urlDraftTemplate":"/blog/company/%slug%/draft","urlRemoveDraft":"/blog/562884407eba6ef16f8045c3/removeDraft","urlTagSuggest":"/blog/api/suggest/company","urlAfterDelete":"/blog/company","isAuthor":false,"subscribeUrl":"/blog/api/subscribe/562884407eba6ef16f8045c3","unsubscribeUrl":"/blog/api/unsubscribe/562884407eba6ef16f8045c3","urlEditPostPage":"/blog/company/562884407eba6ef16f8045c3/edit","urlForTranslate":"/blog/post/translate","urlRelateIssue":"/blog/post/updateIssue","urlUpdateTranslate":"/blog/post/updateTranslate","urlLoadTranslate":"/blog/post/loadTranslate","urlTranslationStatus":"/blog/company/77617/translationInfo","urlRelatedArticles":"/blog/api/relatedArticles/company/77617","author":{"id":"5105614","uid":{"value":"5105614","lite":false,"hosted":false},"aliases":{"13":"kadaner"},"login":"minushuman","display_name":{"name":"Алексей","avatar":{"default":"21377/5105614-16014116","empty":false}},"address":"[email protected]","defaultAvatar":"21377/5105614-16014116","imageSrc":"https://avatars.mds.yandex.net/get-yapic/21377/5105614-16014116/islands-middle","isYandexStaff":true},"originalModificationDate":"2014-03-19T11:04:39.000Z","socialImage":{"orig":{"fullPath":"https://avatars.mds.yandex.net/get-yablogs/49865/file_1465551301378/orig"}}}}}">
На каких языках программирования пишут в Яндексе
«Когда-то давно, семь с лишним лет назад, я пришёл на собеседование в Яндекс. Собеседовали по С++, взяли.
Первый день. Самокатная, шумная столовая кислотных расцветок, обед. Суп из пластмассовых прямоугольных параллелепипедов.
- Хочешь писать на С++? - спрашивают меня.
- Нет, - говорю, - не хочу.
- Ну ок, учи Perl.
С тех пор я пишу на Perl и нежно его люблю».
Такую историю рассказал нам разработчик Яндекса, когда мы готовили эту публикацию и проводили опрос. Мы спрашивали у наших разработчиков, на чём они пишут, чтобы выяснить - какие языки программирования в Яндексе самые популярные. В опросе приняли участие больше половины разработчиков компании, расклад получился такой:
Многие разработчики используют в работе несколько языков, поэтому мы просили их выбрать один - тот, на котором они пишут больше всего. В лидерах оказались пять языков: C++, JavaScript, Java, Python и Perl. Все эти языки разные, и каждый лучше решает свою задачу. Поэтому они по-разному используются в Яндексе.
C++ - классический язык для больших и сложных систем, где критически важна производительность. На нём обычно пишутся самые важные, базовые компоненты приложений. Например, на C++ написано ядро поиска Яндекса, Браузер и Карты.
На JavaScript в основном пишут интерактивные элементы сайтов, такие как анимация или браузерные игры. Этот язык очень широко используется в браузерах для написания интерфейсов - того, с чем напрямую взаимодействуют пользователи. На JavaScript написаны веб-интерфейсы всех сервисов Яндекса.
Java - это универсальный язык, на котором можно написать любое приложение, будь то игра Flappy Bird или веб-сервер, обрабатывающий миллионы запросов в минуту. Несмотря на название имеет мало общего с JavaScript. Разработка на нём пойдёт быстрее, чем на C++, однако программа может получиться чуть медленнее. Особенности Java позволяют создавать программы, которые работают практически на любом устройстве - от телефона до микроволновки. На Java у нас написаны, например, Маркет и Музыка.
Python - это дружелюбный к программисту язык с простым синтаксисом. С него хорошо начинать изучение программирования. У нас Python широко используется в системном администрировании, но подходит для решения почти любых задач, кроме обработки больших объёмов данных. На Python многое делать проще и быстрее, чем на C++, но программа будет не такой производительной. Это разумный выбор, когда производительность не очень важна или задачу нужно сделать быстро. На Python написана серверная часть Диска, а ещё он используется в Директе, внутренних сервисах и многих других проектах.
Perl был создан для обработки текстов - например, для извлечения фактов из текста. Талисман языка - верблюд, лишённый изящества, но выносливый и эффективный, - точно отражает его особенности. Это лаконичный, но непростой язык, который, однако, хорошо решает свою задачу. В Яндексе его используют, например, для анализа данных в баннерной системе и в разработке серверной части некоторых сервисов - например, Директа.
С точки зрения задачи выбор языка - это поиск равновесия между эффективностью программы, квалификацией программиста и временем, потраченным на работу. Конечно, в реальности всё немного сложнее, поэтому иногда и случаются истории вроде той, с которой мы начали. «Шёл на вакансию C++, взяли на Perl, пишу на Python, а люблю Scala», - такое тоже бывает.
С точки зрения разработчика, выбор языка - это вопрос предпочтений. Кому-то действительно нравится сам язык, кому-то - задачи, которые он решает. Например, одни предпочитают фундаментальные задачи и пишут базу поиска на C++, а другие любят делать то, что видно пользователям, и пишут интерфейсы на JavaScript. Третьи пишут на каком-то языке просто потому, что знают его досконально. А некоторые, наоборот, готовы пробовать новое и участвуют в разных проектах.
Яндекс делают более шести тысяч человек, из них четверть - это разработчики. По большому счёту неважно, на каком языке пишет человек. Если он профессионал, для него всегда найдётся подходящая задача. Прямо сейчас у нас открыто 90 вакансий для разработчиков в десяти городах. Хотите попробовать свои силы - (вакансии в берлинском офисе можно посмотреть ).
Из письма: "Здравствуйте! Никак не могу решиться, какой язык мне лучше начать серьёзно учить (немного знаю pascal (Delphi) и C), в основном хотелось бы писать программы под линукс, но и под другие системы тоже. Так как Си уже отмирает, то не знаю что выбрать: С++ или Java. Помогите, пожалуйста, с выбором, может вообще учить что-нибудь другое, неважно что, сложнее или легче, мне важнее что лучше и нужнее… "
Ответ 1: Я бы не сказал, что Си умирает. Для того чтобы писать на C++ и C#, нужно знать чистый Си. Ведь язык-то тот же, только добавилось объектно-ориентированное программирование. Зная Си, вы без труда освоите и Java, и C++, и C#. Ведь они все по своей сути базируются на си. Изучать новые языки намного легче, если вы уже знаете какой-то (в вашем случае Паскаль и Си). Сейчас входит в моду язык C# и J#. Советую вам установить на компьютер Microsoft Visual Studio и Borland JBuilder. И начать изучать эти языки. Так как это переносимые языки, то у них большое будущее. В частности Java используется очень широко для мобильных ОС.
Ответ 2: На самом деле и с C++ и с Java — работу найдешь легко, если будешь разбираться на должном уровне. Если хочешь «кодить» под Linux – лучше, конечно, С++, просто в исходниках сможешь разбираться, да и «кодить» тоже, разумеется. При этом, после С++ пересесть на Java проблем, думаю, не составит, если жизнь заставит, языки очень похожие! На мой взгляд с хорошим знанием С++ можно будет перейти на что угодно и разобраться с любой технологией.
Ответ 3: Если под Юникс системы, то С однозначно. Под него можно на всех (почти) языках программировать, но "родной" для него все-таки лучше. А вообще это только первое время для тебя будет большое различие между Си и Делфи — когда поймешь, как это работает в одном языке, то поймешь это и в другом.
Ответ 4: Я думаю, что лучше тебе остановить выбор на СИ++… И под Linux много что можно написать, и постепенно изучать Visual для качественного программирования под Windows.
Ответ 5: Важен не язык — важен продукт. То есть конечному пользователю Вашей программы совершенно все равно на чем она написана!
Я все же советую изучать C++, а именно Microsoft Visual C++, причем обязательно с использованием MFC, так как: 1. Классы очень экономят время; 2. Люди получают за это деньги, следовательно, с работой проблем не будет. 3. Как можно увидеть из названия — первое слово везде Microsoft, а это значит, что это актуально.
Я тоже долго метался по оболочкам и языкам — бэйсик, паскаль, с, делфи… Но в конечном итоге остановился на Вижуал С++.
И еще: я не думаю, что Делфи и Вижуал С++ схожи, у них есть свои особенности, взять хотя бы то, что они построены на разных языках, по разному задаются объекты, да и компоненты разные. То есть, выбрав какую либо среду, скорее всего, сможешь пользоваться второй, только ограничено. Теоретически можно две среды выучить, но практически ни одну из них не будешь знать в совершенстве – просто времени не хватит. В общем, от Вашего выбора зависит, в какую ветку портала Вы попадете. Каждый кулик хвалит свое болото! А по сути это все не важно.
Операционная система Android с каждым годом становится не только годной ОС для обычных пользователей, но и мощной платформой для разработчиков. Что ж поделать: Google всегда идёт навстречу девелоперам, предоставляя широкие возможности и мощный инструментарий, приправленный информативной документацией.
К тому же не стоит выпускать из внимания тот факт, что «зелёный робот» является лидером по популярности среди мобильных операционных систем. Это говорит о том, что, программируя под Android, вы будете иметь широкую аудиторию, которая впоследствии может принести прибыль. В общем, Android - своеобразный «оазис» для разработчиков. Поэтому мы подготовили для вас специальную подборку языков программирования, а также сред разработки для этой ОС.
Внимание, небольшое наставление новичкам
: программирование на Android может поначалу показаться сложным или слишком монотонным. Совет: предварительно рассмотрите ссылки на полезные документации прежде чем браться за дело, и тогда программирование на Android не станет для вас проблемой.
Java - основное средство для Android-разработчика
Среды разработки
: Android Studio (IntelliJ IDEA) , Eclipse + плагин ADT Подойдёт для широкого спектра задач
Java - основной язык для программистов под Android, обязательный маст-хев для новичков. Основной исходный код Android написан именно на этом языке, так что легко понять, почему большинство выбирают именно этот язык. Приложения, написанные на Java, запускаются в Android с помощью виртуальной машины ART (или Dalvik в Jelly Bean и более ранних версиях Android) - аналога виртуальной машины Java, из-за которой у Google присутствуют серьёзные судебные тяжбы с Oracle.
Google на данный момент официально поддерживает достаточно мощную среду разработки Android Studio, которая собрана на основе Intellij IDEA от JetBrains. Также не стоит забывать про очень подробную документацию от Google, в которой разбирается всё: от match_parent и wrap_content до конструкторов, констант и основных методов класса JavaHttpConnection - обязательно стоит почитать.
Кроме того, не стоит забывать о Eclipse - очень популярной среде для Java-программистов. С официальным плагином ADT от Google этот тулкит станет мощным и легковесным оружием в ваших руках. Но ребята из Маунтин-Вью ещё с лета прошлого года перестали поддерживать Eclipse, уступив место свежей Android Studio. Рекомендуется использовать на слабых ПК.
Необходимая документация:
С++ - мощный инструмент в руках мастера
Основные среды разработки : Android Studio (версия 1.3 и выше), Visual Studio 2015 , QtCreatorПодойдёт для игровых движков и ресурсоёмких приложений.
С++ - немолодой, но очень мощный язык программирования, отметивший в прошлом году своё тридцатилетие. Был изобретён в 1985 году благодаря стараниям товарища Бьёрна Страуструпа и до сих пор занимает верхние позиции самых популярных языков программирования. «Плюсы» предоставляют вам полную свободу действия, ограничивая вас лишь рамками разумного.
За всё существование Android было создано немало фреймворков и средств разработки для C++. Особенно хочется выделить широко известный Qt и IDE QtCreator, позволяющие разрабатывать кроссплатформенные приложения для Windows, Windows Phone, Windows RT, iOS, SailfishOS и Android (когда-то в этот список входил ещё и Symbian). Кроме того, вы получаете удобную библиотеку контейнеров, алгоритмов и шаблонов Tulip, впитавшую в себя всё лучшее из Java и Android. Ну и, наконец, вы получаете множество различных QT-модулей для высоко- и низкоуровневой работы с системой. Ваш покорный слуга кодит именно в связке C++ и Qt.
В прошлом году на конференции Windows: The Next Champter было уделено широкое внимание достаточно популярной среде разработки Visual Studio 2015. Одним из главных нововведений стала поддержка разработки приложений как под Windows Phone, так и под Android - Microsoft пыталась хоть как-то увеличить количество приложений для своей ОС.
Нельзя также не упомянуть о том, что официальный Android Studio стал поддерживать NDK. С помощью NDK вы сможете использовать при работе с Android графику OpenGL. Если вам нужна быстрота и эффективность - выбирайте NDK! Этот способ разработки отлично подойдёт для игровых движков, требующих большой производительности.
Android разработка на C или C++ может показаться более простой чем на Java, но, несмотря на то, что язык предлагает вам полную свободу производимых действий и не ограничивает вас в ваших шагах, он имеет некоторые специфические особенности, на изучение которых уйдёт немало времени - недаром C++ сравнивают с нунчаками (превосходным оружием, которое, к сожалению требует огромного мастерства). Тем не менее разработка приложений под Android на C и C++ может оказаться занятным делом.
Необходимая документация:
Другие языки
Теперь самое время рассказать о других менее популярных, но тоже интересных языках и фреймворках для них. Однако по многим причинам вы не сможете добиться такого успеха как с Java и C++.Corona (LUA Script)
Подойдёт для создания игр и простых приложений
Если вам по каким-то причинам не хочется изучать Java или разбираться в построении интерфейса через XML, то вы можете выбрать для себя данное IDE. Corona - это достаточно легковесная среда разработки, код в которой необходимо писать на достаточно лёгком LUA (любители Pascal оценят по достоинству).
Данный тулкит поможет вам при написании простых 2D-игр, для коих здесь присутствуют библиотеки для 2D=объектов, звуков, сети и игрового движка. Созданные игры работают с OpenGL, что означает высокую эффективность. Отлично подходит для новичков, возможно, именно на нём вы сможете создать своё первое мобильное приложение на Android!
Необходимая документация:
Adobe PhoneGap (HTML5, JavaScript, CSS)
Подойдёт для создания нересурсоёмких приложений
Если вы уже знакомы с HTML, CSS и JavaScript, в качестве альтернативы вы можете попробовать PhoneGap. Это IDE позволит собирать полноценные приложения, разработанные на вышеупомянутых языках программирования и разметки.
На самом деле готовые приложения из PhoneGap представляют из себя простейшие WebView, оживлённые при помощи JavaScript. При помощи разнообразных API вы сможете использовать различный функционал устройства прямо как на нативных приложениях. Что интересно - приложения компилируются на сервере и затем уже доступны для использования на iOS, Android, Windows Phone, Web OS и BlackBerry OS. С такой широкой кроссплатформенностью разработка приложений может значительно ускориться.
Необходимая документация:
Fuse (JavaScript и UX)
Подойдёт для создания как простых, так и сложных приложений
Когда люди говорят о средствах разработки под Android, они часто вспоминают Fuse. Этот инструмент - один из удобнейших в своём роде, и он может представить перед разработчиком широкий спектр возможностей и преимуществ.
Основная логика Fuse-приложений строится на JavaScript - простом и понятном языке с низким порогом вхождения. Интерфейсный же фундамент представляет UX-разметка - интуитивно понятная каждому. Ну а «плюшки» среды позволят вам применять изменения прямо во время работы приложения на вашем устройстве или эмуляторе - прямо как в Android Studio 2.0 и выше. С помощью Fuse разработка приложений для Android может оказаться несложной и приятной.
Необходимая документация:
Слова «под занавес»
Конечно мы вам показали далеко не все существующие на данный момент инструменты разработки. Этой статьёй мы вам хотели объяснить, что стать Android-разработчиком не так уж и сложно, хотя это зачастую требует стараний и упорства. Мир разработки под мобильные платформы открыт для вас, но помните: первый шаг всегда за вами.
Яндекс провел опрос своих разработчиков, чтобы выяснить на каких языках программирования они пишут. Об этом сообщается в блоге Яндекса, где говорится следующее:
«Мы спрашивали у наших разработчиков, на чём они пишут, чтобы выяснить - какие языки программирования в Яндексе самые популярные. В опросе приняли участие больше половины разработчиков компании, расклад получился такой:
Многие разработчики используют в работе несколько языков, поэтому мы просили их выбрать один - тот, на котором они пишут больше всего. В лидерах оказались пять языков: C++, JavaScript, Java, Python и Perl. Все эти языки разные, и каждый лучше решает свою задачу. Поэтому они по-разному используются в Яндексе.
C++ - классический язык для больших и сложных систем, где критически важна производительность. На нём обычно пишутся самые важные, базовые компоненты приложений. Например, на C++ написано ядро поиска Яндекса, Браузер и Карты.
На JavaScript в основном пишут интерактивные элементы сайтов, такие как анимация или браузерные игры. Этот язык очень широко используется в браузерах для написания интерфейсов - того, с чем напрямую взаимодействуют пользователи. На JavaScript написаны веб-интерфейсы всех сервисов Яндекса.
Java - это универсальный язык, на котором можно написать любое приложение, будь то игра Flappy Bird или веб-сервер, обрабатывающий миллионы запросов в минуту. Несмотря на название имеет мало общего с JavaScript. Разработка на нём пойдёт быстрее, чем на C++, однако программа может получиться чуть медленнее. Особенности Java позволяют создавать программы, которые работают практически на любом устройстве - от телефона до микроволновки. На Java у нас написаны, например, Маркет и Музыка.
Python - это дружелюбный к программисту язык с простым синтаксисом. С него хорошо начинать изучение программирования. У нас Python широко используется в системном администрировании, но подходит для решения почти любых задач, кроме обработки больших объёмов данных. На Python многое делать проще и быстрее, чем на C++, но программа будет не такой производительной. Это разумный выбор, когда производительность не очень важна или задачу нужно сделать быстро. На Python написана серверная часть Диска, а ещё он используется в Директе, внутренних сервисах и многих других проектах.
Perl был создан для обработки текстов - например, для извлечения фактов из текста. Талисман языка - верблюд, лишённый изящества, но выносливый и эффективный, - точно отражает его особенности. Это лаконичный, но непростой язык, который, однако, хорошо решает свою задачу. В Яндексе его используют, например, для анализа данных в баннерной системе и в разработке серверной части некоторых сервисов - например, Директа.
С точки зрения задачи выбор языка - это поиск равновесия между эффективностью программы, квалификацией программиста и временем, потраченным на работу. Конечно, в реальности всё немного сложнее, поэтому иногда и случаются истории вроде той, с которой мы начали. «Шёл на вакансию C++, взяли на Perl, пишу на Python, а люблю Scala», - такое тоже бывает.
С точки зрения разработчика, выбор языка - это вопрос предпочтений. Кому-то действительно нравится сам язык, кому-то - задачи, которые он решает. Например, одни предпочитают фундаментальные задачи и пишут базу поиска на C++, а другие любят делать то, что видно пользователям, и пишут интерфейсы на JavaScript. Третьи пишут на каком-то языке просто потому, что знают его досконально. А некоторые, наоборот, готовы пробовать новое и участвуют в разных проектах.»