![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Недавно закончил изучение основ ActionScript 3.0 для Flash и теперь решил заняться серверным программированием, но встал вопрос, какой язык программирования выбрать? Всего у меня 4 варианта: C++, C#, Java и PHP. PHP я, скорее всего буду изучать в дальнейшем(так как, всё-таки самый популярный серверный язык программирования и поддерживается всеми хостингами), но на нём вроде как нельзя запрограммировать онлайн игру в реальном времени + он медленный. C++ слишком сложный и менее удобный. А вот Java и C# - то что надо!
Принципиальных отличий в коде мало, а меня интересует результат: что на чём запускается(Windows, Linux, компьютер, мобильник, сервер...), скорость, вес приложения. Также интересует: возможно ли встраивание Java кода в HTML, как в ASP.NET, возможно ли с помощью Java, C# запрограммировать онлайн игру в реальном времени? |
|||
|
||||
jk1 |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
Для Java-приложений многое зависит от задач и выбора интрументов: если будете писать сервер руками на сокетах, то сможете поднять везде, где есть java-машина и дадут сокет. Если используете фреймворки, то потребуются контейнеры/сервера с их поддержкой. Однако большинство из них вполне кроссплатформенны (маленький камешек в огород ASP.NET ).
Конкретные значения скорости работы для динамически компилируемых языков замерять очень проблематично, однако если критична real-time работа, в Java предусмотрены соответствующие инструменты
конечно возможно, это же Тьюринг-полные языки. -------------------- Opinions are like assholes — everybody has one |
||||||
|
|||||||
iluvatar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 266 Регистрация: 17.9.2007 Репутация: нет Всего: 4 |
запрограммировать можно все что угодно на чем угодно. вопрос времени
что значит игра в реал-тайме? html или flash? какое значение имеет вес приложения если 80% будет занимать графика и еще 20% - БД ? вот это выносит мне мозг, что вы имели в виду? кроссплатформенность? возможно вы имели в виду jsp, jsf ? опишите что вы хотите получить в результате. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Можете уточнить: 1) Есть ли в большинстве хостингах Java-машина и дают ли на них сокет? 2) Что за фреймворки? Это что-то типа ASP.NET? Меня интересуют 3 основные возможности(можете показать их реализацию на Java, если это возможно): 1) На браузерный запрос пользователя http://example.com/default.html выслать ему страницу: <html><body><тут содержимое файла content.txt></body></html> 2) На браузерный запрос пользователя, который ссылается на несуществующую страницу ответить: <html><body>Нет такой страницы</body></html> 3) Возможность создания онлайн игр. Насколько я понимаю относительно Java всё делается так: 1) На сервере запускается программа, которая отлавливает подключение/отключение клиентов. 2) Клиенты, подключившись, 40 раз в секунду посылает на сервер информацию о произведённых пользователем действиях. 3) Сервер 40 раз в секунду отсылает обновлённую информацию всем клиентам. Это делается так или как-то по другому? Добавлено через 5 минут и 11 секунд Не по ходам(как морской бой), а 40 раз в секунду(как Countre Strike(извиняюсь если неправильно написал)).
Где запустится, если сделать все необходимые установки(например программа на C# запускается на Windows без дополнительных установок). Кстати, можно ли запустить программу на C# на других ОС. Я имел ввиду, можно ли на Java делать как на PHP и ASP.NET. |
|||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
Не думаю, что Вам удастся написать сервер для реал-тайм игры на PHP ![]() nns2009, Имейте ввиду, что программирования сервера для реалтайм игры (клиет, я так понял, на flash) - не имеет ничего общего с web программированием. Впринципе и Java и C# тут хороши. Единственное, будете писать на С# - старайтесь не выходить за рамки Mono, иначе стоимость серверов (с Windows) будет сильно бить по карману. Если говорить о web программировании, то тут ИМХО Java вне конкуренции. Во многом благодаря стараниям "альтернативной" команды Spring Source, альтернативной в кавычках, так как их Spring Framework фактически стандарт де-факто в web разработке с помощью Java, хотя, последняя версия спецификации EJB (типа, стандарт де юре) - стала поворачиваться "к лесу задом", но насколько повернулась к разработчикам передом - не скажу, не успел пока как следует ознакомиться. Да и Spring Source на месте не стоят - создали Spring Roo, продвигают Grails (я просто в восторге - еще б нормальную поддержку со стороны IDE , хотя бы родного SpringSource Tool Suite, правда, говорят, в коммерческой версии idea все прекрасно) У .NET с качеством и разнообразием web фрэймворков на мой взгляд не так хорошо. Хотя, в MS тоже на месте не стоят да и к "альтернатившикам" прислушиваются (тот же ASP.NET MVC Framework, насколько я знаю, пришел в мэйнстрим из народа). -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
jk1 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 40 Всего: 75 |
1) Servlet API + JSP будет самым простым и понятным решением 2) Использовать фильтр сервлетов (см. пункт 1), например URLRewrite 3) Не могу сказть насчет того, как это делается в современных играх, однако возможно делать вызовы из сервера клиенту с помощью любой реализации спецификации Comet Рекомендую вот этот обзорный цикл статей http://www.java-course.ru/. После него все должно встать на свои места, по крайней мере относительно Java. -------------------- Opinions are like assholes — everybody has one |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
А что посоветуете скачать в качестве компилятора и среды разработки?
|
|||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
NetBeans из бесплатных на мой вкус - лучший. Еще есть eclipse - может в плане ресурсоемкости получше NetBeans, но много чего не хватает из коробки, нужно доставлять плагинами. Есть базирующиеся на eclipse среды ( типа SpringSource Tool Suite ). Есть JDeveloper - среда красивая, но ИМХО глючная, да и заточена под продукты Oracle. Есть коммерческая idea. Многие считают ее лучшей. У нее, кстати, есть и бесплатная версия, но, слегка, урезанная в плане функциональности. А компилятор - часть JDK. Так что все что нужно - это JDK . Это сообщение отредактировал(а) Vasay - 27.4.2010, 14:08 -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
А перед установкой NetBeans(которую я сейчас скачиваю) нужно ли установить JDK?
|
|||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
nns2009,
Обычно нужно, но есть варианты с JDK в комплекте -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Всё установил, всё работает. Теперь некоторое время буду изучать Java после чего выскажу своё мнение о нём.
|
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Сейчас читаю http://www.java-course.ru/ . Дошёл до базы данных, а вот тут ничего не понятно(сам код SQL запроса понятен, т.к. я немного работал с БД на PHP, а не понятно куда его совать, куда совать JDBC и т.п.). Не подскажите? (с командной строкой я никогда в жизни не работал.)
|
|||
|
||||
Shtrun |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 14.2.2010 Репутация: нет Всего: нет |
Не обязательно работать с командной строкой. Ты MySQL установил? Все работает?
На каком этапе ты остановился и у тебя не получается? |
|||
|
||||
nns2009 |
|
||||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
1) Скачал mysql тут: http://www.softportal.com/get-65-mysql.html, установил в C:\Program Files\MySQL\MySQL Server 5.1
2) Скачал connector/j 5.0.6 тут: http://soft.mydiv.net/mac/files-MySQL-Connector-J.html, распаковал в C:\Program Files\MySQL\mysql-connector-java-5.0.6 После этого на сайте http://www.java-course.ru/ написано:
Всё после слов "И запустите команду"(совершенно непонятно какую) я не понял и пропустил. 3) Создал проект TestJDBC(в NetBeans 6.8) и сохранил в C:\Users\Nns2009\Documents\Java\Тренировки\Первые приложения\TestJDBC. 4) В папке src создал файл TestJDBC следующего содержания(как на http://www.java-course.ru/ только красиво оформлено) :
4) В папку src скопировал файл mysql-connector-java-5.0.6-bin из папки C:\Program Files\MySQL\mysql-connector-java-5.0.6 . 5) Запустил проект в NetBeans. 6) Получил, что-то вроде:
По идее пример не должен работать правильно(т.к. я не создавал таблицу), но ошибка тогда должна выскакивать совершенно другого рода. В архиве я прилагаю снимки некоторых папок. Это сообщение отредактировал(а) nns2009 - 29.4.2010, 20:04 Присоединённый файл ( Кол-во скачиваний: 5 ) ![]() |
||||||
|
|||||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Хорошие новости:
Скачал connector/j 3.0.16, скопировал файл mysql-connector-java-3.0.16-bin-ga.jar в папку TestJDBC распаковал его и снова запустил проект. Теперь окно с ним выглядит так, как на приложенной картинке, а ошибку выдаёт такую:
Это уже в тему(как раз из-за не созданной таблицы, наверное). Теперь вопрос: как её(таблицу) создать? И неужели для каждого проекта потребуется распаковывать файл mysql-connector-java-3.0.16-bin-ga.jar в папку src? Хотелось бы поместить этот файл в какую-нибудь папку, прописать как-нибудь к нему путь и забыть про него. Это сообщение отредактировал(а) nns2009 - 29.4.2010, 20:12 Присоединённый файл ( Кол-во скачиваний: 12 ) ![]() |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Установил программу для редактирования БД: теперь всё вышеперечисленное работает. И я продолжил изучение http://www.java-course.ru/ .
Сейчас я на Части 7(что такое Servlet) и тут возникла проблема: сервер Apache Tomcat не работает: сделал всё, как было описано, но при запуске <TOMCAT_HOME>\bin\startup.bat открывается 2 DOS-окна и сразу закрываются, а при введении в браузер http://localhost:8080/ выдаётся:
Что я неправильно сделал? Использую Windows 7 Home Premium и Firefox 3.6 и apache-tomcat-6.0.26-src . |
|||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
nns2009,
Если ты скачал версию NetBeans с поддержкой Java EE то там в комплекте TomCat и GlassFish. Управлять ими можно прямо из NetBeans, так же как и базами данных. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Честно говоря не знаю какая у меня версия. Скачивал вроде отсюда http://softidle.ru/93-netbeans-ide-polnaya-versiya.html .
Добавлено через 7 минут и 25 секунд В разделе Tools -> Servers есть GlassFish. Попробую потыкать там. Добавлено через 14 минут и 28 секунд Я понятия не имею что там нажимать: нет ни кнопок запустить сервер/остановить сервер и т.п. Подскажите. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Благодаря видео на YouTube я смог запустить TomCat и всё заработало(умники на официальном сайте вместо того, чтобы поместить один рабочий архив, поместили много нерабочих и я не тот скачал).
Но опять проблема: сервер работает только пока файл startup.bat открыт, неужели для работы сервера постоянно придётся держать это окно открытым. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Ещё возникла проблема: при написании сервлета
т.к. пакета javax.servlet нет по умолчанию, я скопировал его в папку src проекта. И несмотря на то, что все классы доступны, NetBeans 6.8 настойчиво выдаёт ошибки типа package doesn't exist. Что делать? Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
|||
|
||||
Vasay |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
nns2009,
![]() Качать надо с официального ресурса: netbeans.org Там же есть документация, в том числе и на русском.
Там настройка. Можно добавлять новые. В окошечке, где ваш проект - на верху есть три вкладки, Projects, File, Services Нажмите на Services - там можно управлять серверами, базами данных. Вообще, создаете web aplication и при нажатии Run Netbeans сам стартанет GlassFish и задеплоет на нем приложение. Судя по картинке - Вы создали десктопное приложение, потому и не подключены нужные либы. Да и либы нужно добавлять в Libraries проекта. Это сообщение отредактировал(а) Vasay - 1.5.2010, 21:59 -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
||||
|
|||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
||||
|
||||
Vasay |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
Вы просто находка для ботнэтчика.
В проекте Libraries видете? Правой кнопокой мышки по ним нажмите, дальше, думаю, разберетесь. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
||||
|
|||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
Огромное спасибо, заработало. Но можно ли как-нибудь настроить NetBeans, чтобы в других проектах он подключал некоторые библиотеки автоматически? Теперь перешёл к JSP, но вот проблема: как создать файл с расширением JSP: проводник не позволяет менять расширения: если я после имени текстового файла ставлю .jsp то имя файла становится hello.jsp.txt. Что делать? |
|||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 11 Всего: 73 |
Вы создайте web проект. Тогда при нажатии file -> new file NetBeans будет Вам предлагать создать в том числе .jsp, а то судя по скриншоту - Вы пытаетесь написать веб приложении в проекте под десктоп. -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
nns2009 |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 174 Регистрация: 1.2.2009 Репутация: 1 Всего: 1 |
В следующий раз учту: вначале не думал, что веб понадобится, а перекопировать все файлы не хочется, но проблему удалось решить, случайно обнаружив у себя на ноутбуке Adobe Dreamweaver. Перешёл к части 9. После того, как я проделал все шаги сервер выдаёт следующее:
Думал скачать исходники, которые обычно выкладываются в конце, но там их нет. Подскажите, пожалуйста. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |