PDA

Просмотр полной версии : [Прочее] Азы программирования и алгоритмостроения на примере простейшего ЯП pawn. Видеокурс.



CheckStar
01.04.2016, 15:52
Доброго времени суток.
Меня зовут Евгений.
За моей спиной порядка 4-ех лет программирования, в том числе и ООП.
Начинал с банального интереса к серверостроению CRMP.
На данный момент в одиночку веду разработку крупной системы GPS-позиционирования.
Высшего образования не имею, все знания и опыт копились годами.



С недавнего времени решил заняться обучением основам алгоритмизации в бесплатной и общей форме, на примере простейшего скриптового ЯП Pawn, и серверостроении SAMP/CRMP.
Решения постараюсь нести универсальные (т.к. CRMP на данный момент застрял на 0.3е).

Вступление уже выпущено, прикладываю к топику.
Первый урок выпущу совсем скоро.
Ну а далее - зависит от того, скольким людям это действительно понадобится.
Надеюсь, мою идею поддержат многие.
Спасибо за внимание.


Ссылка нагруппу (https://vk.com/check_star_pawn)

Ссылка на канал (https://www.youtube.com/channel/UC1LyupiWeEnUny3jLeV0qUg)

Ссылка на вступление (https://youtu.be/MFpQs6Czcp0)

newbie01
01.04.2016, 16:11
Сконцентрируй силы на SAMP а не на CRMP. Кстати поддерживаю решение рассказывать не только про сам Pawn но и про MySQL, PHP и так далее и как их использовать. Так как эти знания неотъемлемая часть создания проекта в целом. Займись оформлением данной темы, можешь обратиться ко мне помогу с этим.

CheckStar
03.04.2016, 12:36
Смысл видеокурса - показать pawn с разных сторон, максимально расширив аудиторию.
Будет как CRMP, так и SAMP. Как Pawn, так и SQL, PHP, и прочее

CheckStar
08.04.2016, 17:31
Начинаем с простого.
Второй урок из серии (https://youtu.be/xRongnmx6y0)

TheMallard
08.04.2016, 17:43
Верно подмечено, что загружать все файлы надо с sa-mp.com либо gtasrv.ru. Особо одаренные либо не знали о том что такие сайты вообще есть :dash2:, а некоторые даже думали что SA-MP это разработка одноименного проекта с постфиксом RP.

DeimoS
09.04.2016, 13:05
Лучше бы подробнее остановился на разъяснении предназначения каждой папки/параметра в server.cfg и объяснил почему ты что-то удаляешь/не хочешь использовать.В идеале, как я считаю, урок не должен создавать никаких вопросов после себя. У тебя же эти вопросы остаются.
Ну а так - молодец. У меня, примерно, то же самое отснято, только более подробно и с направлением именно на SA-MP.

CheckStar
11.04.2016, 20:45
Старался как раз таки оставлять минимум вопросов. Удаляя FS, например, я объяснил, что вся логика будет висеть на моде.

DeimoS
12.04.2016, 12:36
Старался как раз таки оставлять минимум вопросов. Удаляя FS, например, я объяснил, что вся логика будет висеть на моде.

Ну ты сказал что-то вроде "Глупо использовать FS, поэтому всё будет находится в моде". А почему глупо? Какие минусы? Вот тебе уже вопросы, которые появятся у людей

Disinterpreter
15.04.2016, 00:48
Разве павн низкоуровневый?

Profyan
15.04.2016, 18:02
Разве павн низкоуровневый?

Он скриптовый)

Desulaid
15.04.2016, 18:29
Разве павн низкоуровневый?

Он к машине ближе, чем язык ассемблера :D

$continue$
15.04.2016, 19:51
Чего?

Он к машине ближе, чем язык ассемблера :D

L0ndl3m
15.04.2016, 21:20
Чего?
Того.

jeraqiv
15.04.2016, 21:26
Собралась аудитория которая не любит читать статьи и книжки.


Он скриптовый)

Ответ не является корректным. Языки делятся на высокоуровневый и низкоуровневый уровень абстрации. Разработка программ на Java проще чем на языке Assembler.


Он к машине ближе, чем язык ассемблера :D

Что ближе к машине как не ассемблер?

Disinterpreter
16.04.2016, 10:59
Собралась аудитория которая не любит читать статьи и книжки.



Ответ не является корректным. Языки делятся на высокоуровневый и низкоуровневый уровень абстрации. Разработка программ на Java проще чем на языке Assembler.



Что ближе к машине как не ассемблер?

Никто явно сказать не может, но суть в том, что рашп далеко не низкоуровневый язык. Значит автор сам чего-то не понимает.

jeraqiv
16.04.2016, 17:01
Никто явно сказать не может, но суть в том, что рашп далеко не низкоуровневый язык. Значит автор сам чего-то не понимает.

Автор языка или курса?

Desulaid
16.04.2016, 17:12
Что ближе к машине как не ассемблер?

Pawno жи))0

Надеюсь, вы поняли, что все это было лишь частью моего тупого троллинга :с

Disinterpreter
16.04.2016, 18:03
Автор языка или курса?

Автора видео, которые он делает,

P.S compuphase то знает, что их язык высокоуровневый.

jeraqiv
16.04.2016, 18:29
Автора видео, которые он делает,

P.S compuphase то знает, что их язык высокоуровневый.

Если уроки по Pawn - то говорить нужно именно про этот язык. Нужно скачать официальный компилятор (который во многом отличается от всеми любимого). Если уроки по разработке - то это уже не по Pawn.

CheckStar
23.04.2016, 20:11
Нет, Pawn - высокоуровневый ЯП.
Здесь допустил свою ошибку.

Второй урок из серии:

https://youtu.be/duEcfPy1PwM

$continue$
23.04.2016, 22:08
Несколько советов или замечаний (называйте как хотите):

1) У passwd есть опциональные параметры:


passwd [LOGIN]

То есть пароль можно сменить не только себе, но и другим пользователям.
Вы собираетесь запускать SA-MP сервер от root?

https://i.ytimg.com/vi/AXvb_LQawB0/hqdefault.jpg

Советую создать нового пользователя, аля SA-MP_server_one.

2) Как собираетесь запускать SA-MP сервер?
Советую, использовать GNU/Screen (https://ru.wikipedia.org/wiki/GNU_Screen) и с помощью него показать запуск нескольких серверов на одной машине.
Покурить (https://wiki.archlinux.org/index.php/GNU_Screen_%28%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9%29#.D0.97.D0.B0.D0.BF.D1.83.D1.81.D0.BA_.D0.B2_.D0.BE.D0.BA.D0.BD.D0.B5_1)GNU/Screen

3) Что собираетесь использовать для запуска веб-сервера? (Предполагаю, что Apache)
Предлагаю использовать nginx (https://ru.wikipedia.org/wiki/Nginx)
Покурить, что и как в nginx. (https://habrahabr.ru/post/164401/) (Кстати, когда я курил этот мануал у меня на сервере стоял CentOS, пришлось не много подредактировать действия из статьи. А у Вас же Debain)

4) Как то pytty мне не нравиться, конечно я адекватной замены в ваших этих окнах (http://lurkmore.to/Windows) не знаю. Вообще стараюсь избегать администрирование удаленных серверов в Windows (у меня на ноутбуке установлена OpenSUSE Leap [42.1])
Так, вот в Linux есть ssh-client, который используется через терминал локального компьютера.

https://sc-cdn.scaleengine.net/i/b35ee465a18a54e7fe3419b0a7c491f0.png
https://sc-cdn.scaleengine.net/i/ef7033621de1abfa8cb328a43eff5aa3.png

P.S: 192.168.1.1 - подключение к моему роутеру.

5) Что бы было удобно работать с процессами Linux советую накатить htop (https://ru.wikipedia.org/wiki/Htop)

P,S: Ещё стоит показать синтаксис iptables (https://ru.wikipedia.org/wiki/Iptables) (как банить/разбанивать порты, ip адреса. Как открыть nый порт, etc...)

Как то так...



А, вот ещё забыл про хостинг: ipserver.ru (https://www.ipserver.su/) (пару раз у них брал сервер, вродь ниче такой), ruweb.net (https://ruweb.net/), digitalocean.com (https://www.digitalocean.com/) (топовый хостинг-провайдер [У меня есть 60$ для него, но карту от сберыча не берет)

jeraqiv
23.04.2016, 22:32
Данный курс называется Азы программирования и алгоритмостроения на примере простейшего ЯП pawn. Возникает вопрос, а зачем человека обучать VDS и подключение по SSH если это не касается языка? Допустим человек решил изучить C++, но на втором уроке его уже учат выпускать свой продукт на рынок. Честно говоря это не совсем правильно.

Если вы хотите обучить людей владеть Linux, тогда сделайте отдельный курс.

$continue$
23.04.2016, 22:36
Это взаимно связанно. Что бы выпить чашечку кофе, Вам придется найти объект, которым Вы положите кофе (ложка, например), без этого объекта дальнейших действии не будет (ну или как тут: они будут, но будут затруднены)
Администрирование и программирование, очень тесно связаны, вообще.

Данный курс называется Азы программирования и алгоритмостроения на примере простейшего ЯП pawn. Возникает вопрос, а зачем человека обучать VDS и подключение по SSH если это не касается языка? Допустим человек решил изучать C++, но на втором уроке его учат выпускать свой продукт на рынок. Честно говоря это не совсем правильно.

Если вы хотите обучить людей владеть Linux, тогда сделайте отдельный курс.

jeraqiv
23.04.2016, 22:54
Это взаимно связанно. Что бы выпить чашечку кофе, Вам придется найти объект, которым Вы положите кофе (ложка, например), без этого объекта дальнейших действии не будет (ну или как тут: они будут, но будут затруднены)
Администрирование и программирование, очень тесно связаны, вообще.

Администрирование и программирование взаимосвязаны в том случае, если это крайне необходимо. Человек который только начинает осваивать язык программирования должен уделять своё внимание именно языку.

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

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

Человека нужно готовить к сложностям. Компилирование исходных файлов должно проводиться человеком вручную, именно по этому я сторонник использования IDE в плане обучения.

$continue$, язык программирования Pawn и установка ресурсов на сервер никаким образом не взаимосвязан. Этому следует обучать людей тогда, когда они готовы к самостоятельной разработке проекта.


Что бы выпить чашечку кофе, Вам придется найти объект, которым Вы положите кофе (ложка, например), без этого объекта дальнейших действии не будет

Для написания программы достаточно иметь текстовый редактор. Компиляция исходного кода возможна благодаря программе компилятор. Не понятно к чему здесь сервер.

$continue$
23.04.2016, 23:04
Хмм, ну напишите Вы код и не будете знать как его исполнить. Смысл тогда в этом?

jeraqiv
23.04.2016, 23:11
Хмм, ну напишите Вы код и не будете знать как его исполнить. Смысл тогда в этом?

Для обучения достаточно иметь текстовый редактор, компилятор, исполняемую программу (консоль). Функция main() будет являться главной функцией. В консольном окне человек сможет получить итоговый результат.

Я не понимаю что именно Вам не хватает. На начальном этапе следует вовсе забыть про SAMP. Обучать человека одновременно языку и API SAMP является глупостью. Вы быстрей запутаете человека чем научите его.

CheckStar
28.04.2016, 10:02
В ответ $continue$:
1. Задача стояла в смене пароля root-пользователя. Для дальнейшей работы будет использоваться созданный пользователь.
2. Усложнять задачи пока что не собираюсь, работа в рамках одного игрового сервера.
3. Apache, уже сказал это. Тут у каждого свой вкус, лично мне nginx не особо понравился.
4. Putty - самый популярный, и самый удобный, как по мне. Хотя, возможно я просто уже привык к нему.
5. Для старта пойдет обычный top, отслеживать какие-то спец.данные нам пока не потребуется

А так, спасибо за комментарий:)
Высшего образования не имею, увы. Так что всё на собственном опыте держится.
Однако моя информация уровнем выше будет того г*, что плавает в Сети.

jeraqiv
28.04.2016, 22:35
В ответ $continue$:
1. Задача стояла в смене пароля root-пользователя. Для дальнейшей работы будет использоваться созданный пользователь.
2. Усложнять задачи пока что не собираюсь, работа в рамках одного игрового сервера.
3. Apache, уже сказал это. Тут у каждого свой вкус, лично мне nginx не особо понравился.
4. Putty - самый популярный, и самый удобный, как по мне. Хотя, возможно я просто уже привык к нему.
5. Для старта пойдет обычный top, отслеживать какие-то спец.данные нам пока не потребуется

А так, спасибо за комментарий:)
Высшего образования не имею, увы. Так что всё на собственном опыте держится.
Однако моя информация уровнем выше будет того г*, что плавает в Сети.

Высшее образование здесь не причем.
Что именно вы считаете г* из сети? В сети полно курсов по Linux / Apache / Web которые ведут классифицированные преподаватели.

CheckStar
29.04.2016, 15:41
Высшее образование здесь не причем.
Что именно вы считаете г* из сети? В сети полно курсов по Linux / Apache / Web которые ведут классифицированные преподаватели.

Я говорю о том, что связано с серверостроением samp. Увы, но высококвалифицированных преподавателей в этой сфере не встречал.
И говорю не о самом linux, а о взаимной связи всех составляющих.

И да, вышка имеет своё влияние, тут спорить бессмысленно.

$continue$
29.04.2016, 16:14
Вышка не нужна. Хочешь расскажу залог успеха?

Учишься до 11 класса (сдаешь экзамены), добровольно идешь отдавать долг родине, возвращаешься и заводишь себе девушку, работать на вагонах без образования с 10 до 10, берешь кредит на квартиру = ПРОФИТ!

Итог: Ты использовал свое биологическое предназначение у тебя есть девушка. Есть девушка, но зато по уши в кредитах! Но, зато девушка.

jeraqiv
29.04.2016, 18:25
Я говорю о том, что связано с серверостроением samp. Увы, но высококвалифицированных преподавателей в этой сфере не встречал.
И говорю не о самом linux, а о взаимной связи всех составляющих.

И да, вышка имеет своё влияние, тут спорить бессмысленно.

По поводу высшего образования. Вы не предоставили никаких аргументов в пользу того, что высшее образование действительно нужно. Я могу конечно поспорить с Вами на эту тему, ведь это действительно для меня важно.

Высшее учебное заведение в первую очередь учит учиться, и ничего больше. Если человека с детства не научили этому делу, то я думаю что институт это самое то. Как показывает история, институт готовит больше руководителей и менеджеров, чем практиков. После института когда идет речь об устройстве на работу в IT фирму, работодателя не интересуют твои университетские достижения (исключением являются победы на олимпиадах по программированию). Работодателю как бизнесмену важен лишь доход и процветание его компании, по этому запись оценок в дипломе никак на это не влияет.

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

Disinterpreter
29.04.2016, 18:48
Я говорю о том, что связано с серверостроением samp. Увы, но высококвалифицированных преподавателей в этой сфере не встречал.
И говорю не о самом linux, а о взаимной связи всех составляющих.

И да, вышка имеет своё влияние, тут спорить бессмысленно.

samp ничем не отличается от других серверов. Таких как апач, mysql, etc...
Большинство людей на ЛОРе имеют вообще разное образование и род деятельности, но при этом в линуксе они разбираются.

DeimoS
29.04.2016, 20:04
Вышка не нужна. Хочешь расскажу залог успеха?

Учишься до 11 класса (сдаешь экзамены), добровольно идешь отдавать долг родине, возвращаешься и заводишь себе девушку, работать на вагонах без образования с 10 до 10, берешь кредит на квартиру = ПРОФИТ!

Итог: Ты использовал свое биологическое предназначение у тебя есть девушка. Есть девушка, но зато по уши в кредитах! Но, зато девушка.

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

$continue$
30.04.2016, 07:53
Легко. Только, вот есть смысл?

DeimoS
30.04.2016, 16:56
Легко. Только, вот есть смысл?

Ну да, лучше на каждом углу балаболить и выставлять себя шутом.
Хочешь побеседовать на форуме - прошу сюда (http://pro-pawn.ru/showthread.php?388-Pro-Pawn-Ru-%D0%9A%D1%83%D1%80%D0%B8%D0%BB%D0%BA%D0%B0&p=72093#post72093). Заодно найди сообщение, где я про армию говорил