Zoro K Ответов: 2

Как можно сделать такое приложение, как uber?


Предполагая, что человек ничего не знает о программировании, какие концепции ему нужно освоить, чтобы создать такое приложение, как uber/taxify/liftago? Скажем, ios для начала. Пожалуйста, напишите свой опыт, а также.

Спасибо!

Что я уже пробовал:

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

Richard MacCutchan

Пока вы не овладеете языком программирования, у вас нет шансов создать такую систему. Все эти компании нанимают много опытных программистов во всех различных дисциплинах. Веб-дизайн (HTML, CSS, Javascript), веб-бэкэнд (ASP.NET или PHP), базы данных (SQL, Oracle или аналогичные), обмен сообщениями (электронная почта, sms) и т. д. Извини, но у тебя нет шансов.

BillWoodruff

венчурный капитал

2 Ответов

Рейтинг:
11

Patrice T

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

Советы:
- Начните с простого/безопасного языка: VB, Java, C#, а не C или C++. Я также не рекомендую начинать с Python из-за использования отступов.
- Читайте документацию / следуйте учебникам (их очень много)
- Начните с крошечных/бесполезных проектов, цель которых-научиться программированию, а не делать что-то полезное.
- Начните с программ консольного режима (никакой причудливой графики, никакой мыши)
- Learn debugger (невероятный инструмент обучения)
Отладчик - Википедия, свободная энциклопедия[^]
Освоение отладки в Visual Studio 2010 - руководство для начинающих[^]
- Проблема ? Google-ваш друг.
- Изучите один или несколько методов анализа, E. W. Djikstra/N. Уирт Stepwize уточнение/метод сверху вниз это хорошее начало.
Структурного Программирования.формат PDF[^]
https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design[^]
https://en.wikipedia.org/wiki/Structured_programming[^]
https://en.wikipedia.org/wiki/Edsger_W._Dijkstra[^]
https://www.cs.utexas.edu/users/EWD/ewd03xx/EWD316.PDF[^]
- Изучайте алгоритмы и структуры данных.
- Учить Булевой алгебры
- Изучайте SQL
- Изучите проектирование и Администрирование баз данных
Введение в проектирование баз данных[^]
1NF, 2NF, 3NF и BCNF в нормализации баз данных | учебник по СУБД | Studytonight[^]
- Изучайте Регулярные Выражения

Интересная ссылка:
stanford.edu: учитесь программировать[^]
CodersLegacy - передача знаний в будущее[^]
W3Schools Online Web Tutorials[^]

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


OriginalGriff

ОП опубликована в качестве решения:
- Спасибо за ваше предложение. Однако я нахожу, что работа конкретно над проектом была бы более мотивирующей, так как мне легко наскучивают небольшие проекты. Вот почему я хотел изучить конкретные аспекты, которые я могу сразу же применить к своему проекту. У меня нет внутренней мотивации изучать программирование, она чисто инструментальная. Надеюсь, вы понимаете, что я имею в виду."

Patrice T

Спасибо за сигнал, но я его уже видел.
Обратите внимание, что раствор удаляется.

OriginalGriff

Я заставил его исчезнуть после того, как сообщил оператору, что он сделал не так.
Не хотел, чтобы он там привлекал даунвотов.

0x01AA

Есть 5.

Patrice T

Спасибо

BillWoodruff

+5 продуманный список ресурсов ... даже если ОП этого не заслужил :)

Patrice T

Спасибо

Рейтинг:
0

OriginalGriff

Цитата:
Спасибо за ваше предложение. Однако я нахожу, что работа конкретно над проектом была бы более мотивирующей, так как мне легко наскучивают небольшие проекты. Вот почему я хотел изучить конкретные аспекты, которые я могу сразу же применить к своему проекту. У меня нет внутренней мотивации изучать программирование, она чисто инструментальная. Надеюсь, вы понимаете, что я имею в виду.


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

Подумайте о вождении автомобиля: легко запустить двигатель, хлопнуть ногой по дроссельной заслонке, и вы уезжаете! Но... как вы переключаете передачу? Зачем тебе переключать передачу? Как вы замедляетесь? На какой скорости вы должны попытаться взять этот угол? Для чего нужен "ручной тормоз" и как его отпустить? Для чего нужна третья педаль - та, что слева?
Почему двигатель остановился? Почему я возвращаюсь назад на дерево? Для чего эти синие огни на машинах сзади, и как я могу включить их на своей машине? Почему я должен соблюдать ограничения скорости? Что такое, черт возьми, водительские права, и должен ли я их получить? Для чего нужна страховка?

Это все "рамочные" вопросы, о которых вам, как первоначальному водителю (в основном), не нужно слишком беспокоиться - по мере приобретения опыта вождения инструктор познакомит вас с каждым из них безопасным и последовательным образом. Но если вы просто прыгнете в машину в первый раз и попытаетесь проехать через крупный город в другой крупный город на расстоянии 500 км, то в конечном итоге вы не будете в подходящем состоянии для обратного путешествия - при условии, что вы находитесь в подходящем состоянии для этого!

"Маленькие проекты" скучны, "скучны" - но они существуют не просто так - чтобы заставить вас думать правильно и полностью понимать, что вы делаете.

Для того чтобы стать разработчиком, нет никаких ярлыков: вам нужны знания и опыт. Если вы прыгнете в слишком большой проект (а приложение Uber, безусловно, квалифицируется как это!) слишком рано, все, что вы получите,-это куча мусора, которая падает каждые пять минут и которую невозможно поддерживать.

Прости, но ... .. вот как все это работает.


Zoro K

Я понимаю, что ты имеешь в виду. Спасибо, что объяснили это так подробно. Я начну изучать все подробно.

BillWoodruff

+5 красноречиво !