Какой язык выучить "для себя"

 
1 2 3 4 5 6 7 11

GOGI

координатор
★★★★
Сабж. Посоветуйте какой-нибудь язык. Требования: максимальная простота освоения и дальнейшего написания программ на нем. Развитые средства работы с интернет, приятная и простая в работе среда разработки.
Скорость, ресурсоемкость и прочее не интересует совершенно.
1  

Murkt

Pythoneer

Python
[team Їжачки - сумні падлюки]  
04.02.2008 11:56, GOGI: +1: За наводку на хороший язык

Murkt

Pythoneer

GOGI> Развитые средства работы с интернет
Что под этим подразумевается?
[team Їжачки - сумні падлюки]  
+
-
edit
 

Balancer

администратор
★★★★★
Я бы Python порекомендовал. Простой, достаточно быстрый, богатый выбор библиотек, универсальность, есть выбор сред разработки.

Можно ещё Ruby, но с ним ситуация похуже, и лично мне он меньше нравится, так как требует от программиста бОльшей самодисциплины. Ну и с инфраструктурой в целом похуже.

Java - это, хоть и мэйнстрим, но для начального обучения (и, вообще, прикладного программирования) подходит хуже. Си/Си++ - уже сильно устарели. Ди - пока не вырос, да и он скорее альтернатива Си++ и Яве. PHP - узко специализирован, Perl - помер. Функциональщина - сложна для освоения и имеет слабую инфраструктуру. На Бейсик Microsoft забивает и с переносимостью плохо. Паскаль - фиговая инфраструктура и избыточная сложность в случаях за пределами академических. Что там ещё? Lua - только начинает захватывать рынок.

Можно ещё подумать о C#, но учиться на нём сложнее. Хотя под Windows средства разработки хорошие.
 
04.02.2008 11:57, GOGI: +1: За наводку на хороший язык

GOGI

координатор
★★★★
Murkt> Что под этим подразумевается?
Сам пока точно не могу сформулировать :-) Но вообще только HTTP. С клиентской стороны.
Python скачал. Какую среду разработки под Видовз смотреть?
1  
Это сообщение редактировалось 02.02.2008 в 16:54

Balancer

администратор
★★★★★
GOGI> Какую среду разработки под Видовз смотреть?

Попробуй начать с Eric: eric

Сам, правда, не пробовал.
 

GOGI

координатор
★★★★
Не сочтите за наглость. Чтобы оцениться в языке, никто не приведет пример такого кода:
Скачиваем HTML страницу с какого-нибудь сайта.
Берем из страницы какую-нибудь строку (любую) и методом post отправляем на другой сайт.
1  
+
-
edit
 

HolyBoy

аксакал

На другой сайт - куда? Ты хочешь брать содержимое одной страницы и на другой отображать?
 

Balancer

администратор
★★★★★
GOGI> никто не приведет пример такого кода:

На PHP бы легко ;) Потому что работаю с такими вещами. На Питоне - гугль.

GOGI> Скачиваем HTML страницу с какого-нибудь сайта.

Скажем, по запросу "python download page import" ("import" - чтобы повысить релевантность кода :)) попадаем на 410 Gone

Там "вручную" качают web-страницу через сокеты, можно даже прямо из питоновской консоли, "вживую", потом для примера даже занимаются более сложными вещами - разбирают web-страницу на SGML-составляющие (т.е. поднимаются до уровня работы с тэгами и параметрами).

code python
  1. import urllib
  2. sock = urllib.urlopen("http://diveintopython.org/")
  3. htmlSource = sock.read()
  4. sock.close()
  5. print htmlSource


GOGI> Берем из страницы какую-нибудь строку (любую)

11-я строка:

code python
  1. print htmlSource.split("\n")[11]


split - это порезали строку по "\n" на массив и вывели 11-й элемент массива.

> и методом post отправляем на другой сайт.



Нагугливается, например: Портал Python-программистов / вопрос по отправке POST

Или: http://www.lenguage-programm.ru/about/clause/439/335526/

Во втором случае тебе много полезного и по вытягиванию, и по обработке.
 
+
-
edit
 

mabusse

новичок
Вариант, очень удобный в плане создания пользовательского интерфейса, да и вообще, как высокоуровневый скриптовый язык - Tcl/Tk:
www.tcl.tk/
Пример программы в одну строчку, не считая комментария:

code text
  1. # создается кнопка, при нажатии на нее появляется сообщение и программа завершается
  2. pack [button .b -text "Нажми меня" -command {tk_messageBox -message "Да иди ты в баню!"; exit}]


Поддержка TCP/IP и HTTP встроена в ядро языка, не так монструозен как Пайтон. Среда разработки - любой текстовый редактор, желательно с поддержкой подсветки синтаксиса.
Минус - для обучения програмированию не подойдет, сильно непохож на другие языки (кроме LISP-а :)
 

Murkt

Pythoneer

GOGI> Python скачал. Какую среду разработки под Видовз смотреть?
Eric, Eclipse + pydev. Но я лично пользуюсь emacs'ом, и на работе у меня минимум половина людей использовала именно емакс :)

Murkt>> Что под этим подразумевается?
GOGI> Сам пока точно не могу сформулировать :-) Но вообще только HTTP. С клиентской стороны.
В стандартных доках открываешь urllib2, и там всё-всё написано ;)

mabusse> Поддержка TCP/IP и HTTP встроена в ядро языка, не так монструозен как Пайтон.
Это Питон-то монструозен? Пример монструозности пожалуйста :)
[team Їжачки - сумні падлюки]  

Murkt

Pythoneer

GOGI> Не сочтите за наглость. Чтобы оцениться в языке, никто не приведет пример такого кода:
GOGI> Скачиваем HTML страницу с какого-нибудь сайта.
GOGI> Берем из страницы какую-нибудь строку (любую) и методом post отправляем на другой сайт.

code python
  1. import urllib2
  2.  
  3. url1 = 'http://www.example.com/'
  4. url2 = 'http://www.example2.com/'
  5. output = urllib2.urlopen(url)
  6. con = output.read()
  7. part_of_page = con[100:150] # выдираем 50 символов (с сотого до сто сорок девятого, включительно)
  8. req = urllib2.Request(url2, data=part_of_page) # если указан параметр data, то будет POST
  9. output2 = urllib2.urlopen(req)
[team Їжачки - сумні падлюки]  
+
-
edit
 

mabusse

новичок
На Tcl:
закачка страницы, выдача 11-й строки:

code text
  1. package require http;
  2. set tok [http::geturl "http://www.natm.ru" -timeout 30000]
  3. set html [http::data $tok]
  4. tk_messageBox -message [lindex [split $html \\n] 10]


Murkt> Это Питон-то монструозен? Пример монструозности пожалуйста :)

Прошу прощения, тема интересная, но вынужден удалиться в реал :)
Брошенную перчатку я поймал, за базар отвечу, но попозже :)
 
+
-
edit
 

Balancer

администратор
★★★★★
mabusse> Вариант, очень удобный в плане создания пользовательского интерфейса, да и вообще, как высокоуровневый скриптовый язык - Tcl/Tk:

Это ужас, летящий на крыльях ночи :) Начать можно с отвратительнейшего интерфейса под Linux, пройти через слабо развитую инфраструктуру, и закончить неудобоворимым синтаксимом, стимулирующим появление множества трудноуловимых ошибок :)

mabusse> Пример программы в одну строчку, не считая комментария:

Вот, как раз пример :) Чем больше можно вписать в одну строку, тем больше программист подталкивается к этому. Тем сложнее для чтения и отладки становятся программы, тем выше вероятность зевнуть ошибку. На Ruby, кстати, это будет вряд ли сложнее :) Но нафига? Если часто надо писать программу с кнопкой и выходом, то я zenity задействую :D

mabusse> Поддержка TCP/IP и HTTP встроена в ядро языка, не так монструозен как Пайтон.

Хех. Если уж Питон - монструозен... Только Форт спасёт отца русской демократии :D

mabusse> Среда разработки - любой текстовый редактор

Это не среда разработки, это текстовый редактор ;)
 
+
-
edit
 

Balancer

администратор
★★★★★
mabusse> закачка страницы, выдача 11-й строки:

[lindex [split $html n] 10] - просто супер ;)
 
+
-
edit
 

Murkt

Pythoneer

mabusse>> закачка страницы, выдача 11-й строки:
Balancer> [lindex [split $html n] 10] - просто супер ;)
Ну, если в однострочники: print urllib2.urlopen('http://www.example.com/').read().split('\n')[10]. Форт короче, но менее очевиден.
[team Їжачки - сумні падлюки]  
RU Спокойный_Тип #02.02.2008 21:11
+
-
edit
 
а пхп\перл совсем не котируются? ява это хорошо но "для себя" избыточно, с\с++,бейсик,паскаль и прочие таки вещи- далековаты от HTML , остальное (питон, руби, sh) мне кажется маргинально
хотя я не программе, так ковыряюсь в чужих скриптах по мере необходимости
 

GOGI

координатор
★★★★
to Murkt:
пример мне нравится своей краткостью и понятливостью :-)
1  
UA Murkt #03.02.2008 00:32  @спокойный тип#02.02.2008 21:11
+
-
edit
 

Murkt

Pythoneer

Спокойный_Тип> а пхп\перл совсем не котируются?
Совсем. Убогий синтаксис, нечитабельные программы. Дальше стоит продолжать? В перле были хорошие идеи, но это его не спасло. В пхп хорошего нет вообще ничего.

Спокойный_Тип> остальное (питон, руби, sh) мне кажется маргинально
Если Питон маргинален - то перл и пхп тоже ;)
[team Їжачки - сумні падлюки]  

yacc

старожил
★★☆

Спокойный_Тип>> а пхп\перл совсем не котируются?
Murkt> Совсем. Убогий синтаксис, нечитабельные программы. Дальше стоит продолжать? В перле были хорошие идеи, но это его не спасло. В пхп хорошего нет вообще ничего.
У перла убогий синтаксис? Наоборот лаконичный - наилучший язык для строкообработки. Для маленьких скриптов для совмещения разных текстовых форматов ИМХО наилучший. И никакие директивы включения разных модулей ( типа Import ) для такого случая не нужны ( правда для работы с HTML/XML/HTTP без пакетов не обойдешься но он их сам скачивать и настраивать умеет - только скажи ему что ) . Потоком в него файл отправил, из из потока перенаправил в другой. Вот использовать его для более-менее больших проектов - тады Ой. А обрабатывать всякого рода табличные данные для разовой работы - просто загляденье.
Надо было мне как-то собрать статистику по данным пользователей с одного сайта ( там формат URL для перехода между страничкам был достаточно понятный ) так скрипт на перле я написал достаточно быстро, отладил разбив на разные скрипты: один тупо дампит HTTP запрос в файл ( получаем HTML-файл ), второй - парсит этот файл и находит в нем нужные данные по пользователям ( на фоне рекламы, новостей и прочего бла-бла в контенте ) и третий - записывает в MySQL ( статистику, группировку и фильтрацию удобнее там делать на SQL ). Потом слил все воедино, добавил цикл прохода по страницам ( формирования URL ) и собрал нужные данные. Легко и просто. Точно также я могу написать скрипт и задампить себе какую-нибудь ветку с этого форума ( разбитую по страницам ) и это тоже не будет ахти какой задачей и мне удобнее написать это на перле.

Для таких задач, когда не нужно лезть в ООП и прочие навороты больше него и не надо - и никакие проекты, управления зависимостями, собирание пакета, знание ньюансов среды разработки (IDE) не требуется - только командная строка и текстовый редактор.
Такое можно и на питоне сделать но перл подходит лучше.
 
Это сообщение редактировалось 03.02.2008 в 04:29
LT Bredonosec #03.02.2008 10:06
+
-
edit
 
странно, а мне казалось, что для веба рнр самое основное, что знать надо...
ну, помимо базы хтмл/цсс/жс..

//слежу за темой, бо самому вопрос "какой в изучении попроще, но чтоб можно было широко применить" актуален..
Voeneuch, учи физику, манажор ))  

GOGI

координатор
★★★★
Насколько я понимаю, ПХП все же язык серверной стороны и в других применениях будет хуже.
Кстати, а как у Python (как по русски произносится? :-) ) с user interface? Можно на нем формы с кнопочками создавать?
1  
RU Ведмедь #03.02.2008 10:37
+
-
edit
 

GOGI

координатор
★★★★
Блин, кто бы мне еще теперь объяснил, как этот eric установить под Виндовз. Скачал дистрибутив, распаковал. Запускаю install.py, на секунду открывается окно python и больше нифига не происходит. Шо за фигня?
1  

mabusse

новичок
mabusse>> Поддержка TCP/IP и HTTP встроена в ядро языка, не так монструозен как Пайтон.
Murkt> Это Питон-то монструозен? Пример монструозности пожалуйста :)

Смотрю сугубо с практической стороны. Переносимое клиентское приложение на десятки машин, но пока в основном под Win. Серверную сторону рассматривать не будем, там под Linux все проще.
Допустим, остались Tcl/Tk и Python. Распространенный дистрибутив ActivePython при своих 25 Мб не имеет нормальных GUI библиотек, Tkinter в комплекте - это дико урезанный Tcl/Tk, если его расширить до нормального состояния, то нафига вообще Питон? Значит, ставим поверх wxPython, если нужны графики - еще matplotlib. Если проще, чтобы все в одном флаконе - enthon, 125 Мб :lol:
Ладно, решаем для пробы скомпилировать в standalone exe тестовую программку, просто рисующее пустое окно. После всех обрезаний ненужного хлама остается примерно семимегабайтный экзешник, занимаюший в работе что-то около 25 Мб оперативки. Для Tcl/Tk будет соответственно < 1 и ~6,5 Мб (если хотим придать интерфейсу красивый товарный вид, то с tile/ttk будет 1,5/8 Мб).
Я понимаю, это не сравнение языков, а сравнение существующих технических решений. Как язык, Python может и лучше, спорить неохота, в конце концов все языки полны по Тьюрингу. Но конечному пользователю на это плевать, он смотрит на результат.
 
1 2 3 4 5 6 7 11

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru