Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2024, 20:18   #1
iXNomad
Пользователь
 
Регистрация: 06.01.2021
Сообщений: 45
По умолчанию Что тренить? Целюсь в робототехнику

Имеется:
1. Базовые навыки С (ещё учить много надо, есть книга), из компиляторов юзаю gcc, clang особо не трогал пока, не до разных компиляторов сейчас
2. Базовое понимание архитектуры ПК и ассемблера (тоже ещё много чего разбирать, например таблицу системных вызовов, как работает ОС, а из самого процессора в первую очередь ещё надо разобраться с модулем для вычислений с плавающей точкой), пока nasm, хочется потом на arm попробовать
3. Умею в базовые навыки работы с Линуксом (самые базовые, но есть книжка) как юзер (grep так и не освоил пока, регулярные выражения - пока не подойду никак к ним), юзаю и осваиваю vim (очень удобная штука)
4. Немножко понимаю разницу между процедурной парадигмой и ооп (раньше довольно много баловался Java, но не серьёзно)
5. Начал изучать алгоритмы и структуры данных (массивы, связный/двусвязный список, стек, очередь, дек - это тоже сейчас нужно проработать и потом разбирать дальше, больше не знаю вроде ничего толком), в школе написал на Java сортировку пузырьком, это всё вроде))
6. Знаю, что большое значение имеет читаемость и логичность, выстроенность кода именно как текста, я имею в виду следующее: код может работать, но быть нечитаемым и нерасширяемым, где ты сам можешь запутаться, а может быть написан "хорошо", что реально помогает в разработке, я поэтому стараюсь следить за этим.
7. Есть конструктор робота-манипулятора, но пока ничего не делал))
8. Раньше увлекался программированием всяких игрушек на конструкторах и на Java, на ней сделал змейку и Ping-Pong, там ещё всякие движки пытался делать, баловство в общем, тянуло именно сделать, много копировал, и всё только для того чтобы заработало, а не разобраться, как работает какой-то элемент языка, как написать хороший код и т.д.. Например, сериализацию, работу с файлами и работу с потоками я провалил, так и не освоил, ещё умудрялся спорить "интерфейсы не нужны, они ничего не делают, только лишний код", пока не понял что прикол как минимум в модульности и слабой сцепленности этих модулей, что сильно упрощает разработку

Вообще интересует следующее:
1. В этом году хочется поступить в вуз на прикладную математику и с треком робототехника с 3 курса, там в каком-то одном из первых семестров 100% будет курс ООП вроде на С#
2. Очень нравится Lua, это просто маленький шедевр, классный простой и быстрый язык, есть книга, особо не закапывался но всё так интуитивно и просто + быстро + можно соединить с С. Вот думаю, классно наверное было бы в робототехнику его для упрощения задач.
3. Python - просто многие его знают и в целом мне нравится, но очень высокий уровень, выше чем Java/C#
4. Есть книга по С++, и сам язык мне нравится и по концепции, и как даже всё выглядит и работает. Но не по зубам пока. Хотя чувствую прям будто очень мощный микс Java и С (субъективно, как для меня, я знаю что он был создан раньше Java).
5. Есть книга по алгоритмам, но там всё очень серьёзно, вузовский уровень.

Не знаю в каком порядке всё выстроить, пока в случайном, берусь за что захочется сегодня.
Вот из этого набора интересов как что лучше сделать?
ASM, C, Lua, Python, C++, Linux, Vim
Из простых задачек для себя: доделать калькулятор на ассемблере, поиграться с папками и файлами; реализовать на базовом уровне стек, очередь, связный/двусвязный список, очередь с приоритетом, дек на C и C++ (на С++ сделать как класс), сделать прям интерактивные программы; порешать задачки на С-строки: перевернуть строку, инвертировать порядок слов, инвертировать порядок букв в каждом слове. Хочется и более интересных проектов поделать, но по силам.

В общем, помогите плиз что делать)) что-то выкинуть может быть, что-то наоборот добавить что я не знаю:/ например, изучать bash пока особо желания нет, субъективно синтаксис отталкивает, да и практическая польза для меня пока разве что написать скрипт для сборки проекта из исходников чтобы каждый раз не вбивать gcc ...

Последний раз редактировалось iXNomad; 05.04.2024 в 20:28.
iXNomad вне форума Ответить с цитированием
Старый 06.04.2024, 04:07   #2
Алексей1153
фрилансер
Форумчанин
 
Регистрация: 11.10.2019
Сообщений: 960
По умолчанию

iXNomad, C++ изучай, это самое долгое из перечисленного

какой компилятор - значения не имеет, главное, чтобы стандарт поддерживал. Обычно это флаги
Код:
-pedantic-errors
-Wall
-Wextra
Алексей1153 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц