Форум программистов, компьютерный форум, киберфорум
Теория программирования
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 03.01.2020
Сообщений: 1

Какое направление выбрать?

03.01.2020, 21:41. Показов 1122. Ответов 3

Студворк — интернет-сервис помощи студентам
Добрый день.
Прошу помочь советом в выборе пути развития.
Жизнь так сложилась, что я решил освоить навык программирования, от умных людей я слышал, что это может быть полезно для развития мозга. А т. к. лёгких путей я не ищу, то решил сразу освоить такой навык, который позволит писать кроссплатформенные приложения. Одновременно, с желанием выучиться на кодера, появилась потребность в конкретном приложении для личного пользования, и я решил совместить приятное с приятным.
Необходимое мне приложение это фитнес-дневник. Функционал: набор упражнений, составление программы тренировок, учёт нагрузки, хранение данных как на устройстве на котором установлено ПО, так и в облаке, построение графиков и диаграмм. Срок – 1 год. Платформы – Win, Linux, Android, macOS, iOS.
Попытки гуглить привели к тому, что знаний стало больше, но порядка в голове это не прибавило, а скорее наоборот. Насколько я понял, есть два подхода к написанию кроссплатформенных приложений

1. Одна кроссплатформенная сборка приложения, значительно снижает временные затраты на написание и отладку:
1.1. PWA. Осваивать JS, CSS, HTML, Angular. Умение программировать и под веб, и под десктоп, и под мобильные устройства, видится мне полезным. Смущает большой объём разных знаний. Или это мне только кажется?
1.2. Java. Ещё один вариант одной сборки для множества платформ. Смущают заявления в этих ваших инторнетах о том, что Ява работает медленнее, чем нативные приложения.

2. Уникальная сборка под каждую платформу. Этот вариант интересен например тем, что в момент создания этой темы, более высокая активность пользователей наблюдается в разделах посвящённых C++ и C#. Например:
2.1. C# Unity3D. Привлекает большое кол-во библиотек и заявленная возможность компилировать программу под большое кол-во самых разных ОС без особых плясок с бубном. Устойчивая популярность языка.
2.2. C++ Qt/MSVS. Привлекает большое кол-во библиотек. Устойчивая популярность языка.
2.3. Python. Заявленная простота освоения, устойчивый рост популярности языка.

Есть ещё и третий вариант - учиться сразу по двум направлениям, например PWA и C#?

Если не затруднит, прошу дать развёрнутый ответ. Любое мнение мне будет очень интересно. Также прошу учесть мою малую глубину познаний в этом вопросе.
Заранее спасибо всем уделившим внимание и с прошедшими и с наступающими праздниками.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.01.2020, 21:41
Ответы с готовыми решениями:

Какое выбрать средство разработки для UML?
начал осваивать UML, использую пока Visio. уважаемые, может есть более удобное средство разработки?

Какое шифрование выбрать
Привет. Решил на курсовую реализовать один из след. алгоритмов шифрования: DEC, AES, RSA. DEC мне показался самым толи сложным толи...

Какое направление выбрать
Здравствуйте, дожевываю книгу Шилдта C# 4.0 полное руководство, хотелось бы узнать в какую сторону дальше копать. Подумываю о изучении...

3
294 / 265 / 48
Регистрация: 09.04.2013
Сообщений: 1,038
09.01.2020, 15:28
Для мозгов в первую очередь полезно разбирать как решать те или иные задачи, ну и решать их на практике.
Так что кроме языка желательно и книжечки по алгоритмам почитать, ознакомиться с различными курсами по Сomputer Science.
1
Эксперт по электронике
6574 / 3201 / 335
Регистрация: 28.10.2011
Сообщений: 12,482
Записей в блоге: 7
11.01.2020, 01:38
Цитата Сообщение от mr_Leshiy Посмотреть сообщение
ava. Ещё один вариант одной сборки для множества платформ. Смущают заявления в этих ваших инторнетах о том, что Ява работает медленнее, чем нативные приложения.
Так оно и есть и требует гораздо больше ресурсов компа.

Цитата Сообщение от mr_Leshiy Посмотреть сообщение
C# Unity3D. Привлекает большое кол-во библиотек и заявленная возможность компилировать программу под большое кол-во самых разных ОС без особых плясок с бубном. Устойчивая популярность языка.
2.2. C++ Qt/MSVS. Привлекает большое кол-во библиотек. Устойчивая популярность языка.
Нужно понимать что это "даром" не приходится. Опять же, ресурсы компа...
Нужно помнить о принципе "шашечки или ехать".

Если ваша цель разрабатывать приложения для себя, язык (и его популярность) в принципе не важен. Если цель работать в фирме программистом, на чем работодатель скажет, на том будете писать.
1
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,019
11.01.2020, 19:35
Цитата Сообщение от mr_Leshiy Посмотреть сообщение
PWA. Осваивать JS, CSS, HTML, Angular.
И получить в итоге тормозное говнище, которое нормально работать не будет нигде. А на слабых устройствах им вообще пользоваться будет невозможно.
Цитата Сообщение от mr_Leshiy Посмотреть сообщение
Java. Ещё один вариант одной сборки для множества платформ.
Хороший вариант только для бекенда. Нормальной гуевой кроссплатформенной библиотеки для джавы нет. А то что есть - тоже тормозное говнище.
Цитата Сообщение от mr_Leshiy Посмотреть сообщение
C# Unity3D
Зачем вам вообще юнити потребовался в вашем фитнес-приложении?
Цитата Сообщение от mr_Leshiy Посмотреть сообщение
C++ Qt
Для гуя, по крайней мере для десктопных осей - пожалуй лучшее кроссплатформенное решение. Для мобильных оно тоже вроде есть, но тут я ничего не могу сказать, насколько оно на них хорошее.
Цитата Сообщение от mr_Leshiy Посмотреть сообщение
2.3. Python
То же, что и джава. Для бекенда использовать можно (если он у вас не очень нагруженный, потому что еще тормознее джавы будет). Для всего остального - не вариант.

В общем, для бекенда я бы советовал джаву или сишарп. Для гуёв - тут, увы, ничего лучше нативных приложений все еще не придумали. Ну, можно еще к qt присмотреться, как я и говорил.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.01.2020, 19:35
Помогаю со студенческими работами здесь

Какое направление QA Automation выбрать?
Всем привет! Занимаюсь на курсах QA Automation (Java) в компании, куда после курсов пойду работать. Остался месяц до реального проекта...

Какое направление выбрать в Java?
Привет всем! Изучал Java, прочитал книги, вроде темы понял, написал несколько программ по ним, ну в общем суть понял. Потом прочитал книгу...

ВУЗ: какое направление выбрать?
Добрый день. Сегодня сдал все вступительные экзамены и попал на бюджет по трем специальностям в мат, факе: математика и компьютерные науки,...

Какое же направление в политехе выбрать
И снова здравствуйте. Живу я в Петербурге, объектом моих интересов и сомнений является СПБГПУ (Политех). Хотелки: Программирование ...

Посоветуйте какое направление выбрать в работе
Всем добрый день! Меня зовут Константин, мне 26 лет. Уже в течении 5 лет работаю в области тестирования - ручное/автоматизированное...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru