👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Похоже то что надо — появилась таска сделать небольшой app. Подскажите, как организовать работу с базой через фронт? База должна лежать локально на компе. Иметь возможность писать в нее и извлекать данные через браузер. И при возможности развертывать это дело максимально просто для пользователя (запустил index.html и работаешь). Думаю использовать bootstrap + JS. Для базы подойдет WebSQL или Web storage ?

это классическая задача для построения трёх звенного приложения.
Я не знаком с

WebSQL или Web storage
Но насколья я понимаю — это позволяет хранить сильно лимитированный объём данных в браузере пользователя. Там можно хранить всевозможные настройки, куки- немного данных- кешировать.
Если ты знаком с Js- то для тебя самым простым вариантом- использовать Node.Js для сервера с базой не заморачиваться- и использовать Mongo DB
Связка Js(Html,Js, css) на клиенте + Js (Node.Js) на сервере +Mongo DB- позволит довольно малой кровью реализовать задуманное

А как на счет PostgreDB? я так понял его можно просто на винду поставить и работать с базой через браузер?

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

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

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

Я начинал свою карьеру и рост с того что делал верстку и писал скрипты для своих сайтов: один был просто портал со всяким мусором, другой форум по игре, третий еще что-то и т.д.

По скольку бек-енд знаний нет, то берется что-то очень простое: в идеале uCoz, по-сложнее Wordpress, дальше какой-нить DLE а все остальное рубишь на фронте.

Пытаться сразу делать какой-нить SPA да еще и на модном фреймворке — не советую.

Для начала напишите самостоятельно хотя бы парсер произвольного математического выражения (sin(x)^2+2x)^2 , к примеру. А то фреймворками так и прут все.

Хороший программист отличаеться от плохого какраз тем, что при наличии свободного времени , он найдет что ему пописать в свое удовольствие, без 100500 простыней на форуме.

опыт от

что ему пописать в свое удовольствие
= опыту использующийся на реальном проекте??

Обычно, кодя «в свое удовольствие» программист изучает новые фреймворки, библиотеки и т.д., т.е. то неизведанное и неопробованное, что, возможно, было бы опасно/затратно по времени внедрять на каком-то «рабочем» проекте, т.к. возможны различные непредвиденные сложности, баги, особенности, да и, вероятно, нет времени на освоение нового фреймворка, т.к. «это нужно вчера». Так что такое коденье «в свое удовольствие» бывает даже гораздо полезнее реального проекта.

Попробуй написати закінчений апп , який б ти сам щоденно використовував.Можливо такий , щоб економив тобі ще більше часу.

Наприклад, використовуючи якийсь фреймворк для цього?

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

Підтримую варіант на співесіду і пиляти їхні тестові задачі. Ймовірність що хтось запропонує роботу по «лєвому» проекту задється низькою, звідки знати що він дійсно твій?

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

это не совсем подходящая задача для человека, который хочет писать RIA/SPA на джс. Это скорее для верстальщика задача.

Могу выступить в качестве ментора. Идеи и проекты есть.

Не знаешь что деласть с back-endom? За-mock-ай его. Во-первых, это самый простой вариант. Лучше так, чем что-то там корячится. Во-вторых, самый «чистый» — твое демо не будет портить и отвлекать от фронтенда плохеньки код бекенда. В-третих, для тестирования фронтенда собственно и нужны mock-и, поэтому умение делать и применять где надо mock-и это практический навык, а не вещь из серии «поленился вообще делать back-end».

Касательно же самой сути проекта — можно простой вариант чего-нибудь известного и популярного. Например, социальные сети сейчас в моде + все пользуются LinkedIn. Вот лепим свой аналог LinkedIn. Если нужно что-то показать красивое на клиенте — приделываем, например, чат на WebSocket-ах (тут, кстати, прийдется таки сделать какой-то более умный mock в бекенде чем, например, статические json файлы — которых может хватить для всего остального, но не для WebSocket-ов).

ИМХО

Поки людина не напише своїх 100500 стрічок кода — програміст з цієї людини ніякий.

Незнаєш що писати? Пиши все що завгодно. На будь-якій мові. Під будь-яку платформу. Не потрібно думати одразу про монетизацію чи перспективу розвитку свого дітища. Навіть шкідливо. Просто намагайся щось писати.

1. Є звичка писати список справ чи покупок? Напиши програмку для автоматизації сам (веб/андроїд/десктоп — що хочеш).
2. Хочеш викласти фотки в інеті? Так напиши галерею сам.
3. Ще студент? Я більш ніж впевнений, що половину кафедр чи студ. організацій розцілують тебе за зроблений сайт.
4. Напиши нагадувалку, яка буде тобі слати смс/мейл/push повідомленя/повідомлення в вібер/... , якщо виникають якісь події аля треба платити комуналку, закінчуються гроші на телефоні, вийшла нова серія улюбленого серіалу, в твоєї дівчини/дружини місячні, хтось з твоїх друзів написав пост в соц. мережі, ....
5. Напиши програмку для організації домашньої бухгалтерії.
6. Та блін ... генератор чи розв’язатор для судоку напиши.
7. ...
8. Спробуй навчитись використовувати комп, щоб полегшувати щоденну рутину свою або чужу. (хоч це і не вийде в більшості випадків, але це бездонне джерело ідей і досвіду). Програміст перш за все вирішує певного роду проблеми — так виріши спочатку свої.

Писати можна що завгодно. 95% ідей, правда, вже давно якось реалізовані і/або нікому не потрібні.
Але ж суть не в цьому. Задача ж в тому, щоб набратися досвіду.

Немає бажання вбивати на це все роки свого життя? Так може взагалі сюди не лізти?

...ось загалом теми, котрi рекомендую дипломникам та в якостi научно-практичних:
1. Збір даних метеоактівності
2. Система обліку бібліотечного фонду на RFID-мітках або протикрадіжна RFID-система
3. Дистанційна хімічна лабораторія з використанням WEB-камери та / або роботизованого захоплення (потрібне підкреслити) чи віддалене спостереження за хімлабораторією в браузері
4. Автономний голосової контроль (чим завгодно ... машиною, шторами, телевізором, феном, унітазом, ...) ...на чому? Брати-китайцi для Arduino це додають iзiVR, э й дешевше
5. Система SMS-повідомлень батьків у школі (SMS автоінформатор)
6. Cистема дистанційної діагностики (підставляємо що подобається або проходимо по аудиторіях і лабораторіях інтстітути і дивимося чого є з обладнання)
7. Облік персоналу і відвідувань студентів на RFID
8. Свою gui-оболонку поверх консольного FFMPEG, буде відео-аудіоредактор
9. Попрацюйте з сервісом Google Speech API, керування голосом
10. Попрацюйте з даними центру NOAA *, Space Weather Prediction Center ftp.swpc.noaa.gov, буде візуалізація землетрусів
11. Розбийте відеопотік на NхM квадрантів для відеостіни
12. Мережевий шкільний журнал / розклад занять для учнів / викладачів
13. Віддалене керування шкільним DLP-проектором
14. Эмулятор принт-сервера на VBS
15. Та iнше...

Ігор, дякую за змістовний комент. Ну от, наприклад, зробив калькулятор, medexpert.ua/calculator, Можна подібних робіт наробити багато, але до рівня джуна з такими далеко буде. Просто хотілось би дізнатись, які задачі виконують спеціалісти на проектах, аби починати клепати щось подібне. Ато вивчаю цикли, обєкти, масиви, прототипування. А як їх і де примінити?..

Ну ... як на мене, то «професійна» робота від «непрофесійної» відрізняється в основному процесами, інструментами та відповідальністю: робота в команді, системи контроля версій, баг трекери, стандарти коду, стандарти вирішення типових задач, неперервна інтеграція, тестування різних видів, методики розробки ...

Тобто, як бачиш, до, власне, програмування це все має близьке, але опосередковане відношення.
Наприклад, таке б в професійній розробці не пройшло б: take.ms/1JD9T

В цьому розбиратися треба, але зараз акцент краще поставити на розвиток своїх навичок саме в програмуванні. Щоб не виникало питань виду

Ато вивчаю цикли, обєкти, масиви, прототипування. А як їх і де примінити?..
Таке питання звучить як: «вот вивчаю тут види ключиків, але не знаю що ними крутити.... вот гайок на 10 жодного разу не бачив».
Хочеш погратися з циклами та масивами? Порахуй визначник матриці 100×100. Питань не залишиться.
Для чого придумали об’єкти? Напиши візуальний редактор діаграмок з декількома видами фігуркок та стрілочками. Без ООП твій код може стати дуже заплутаним.
А як їх і де примінити?..
Інструментів, бібліотек, шаблонів та підходів зараз безліч. Все не розбереш. Спробуй не шукати задачі під інструменти, спробуй шукати інструменти під задачі.
6. Та блін ... генератор чи розв’язатор для судоку напиши.
 я писав розв’язатора)) але найскладніші з якогось там сайту він не міг розв’язати, хоча я його на декілька годин залишав. може невірний підхід обрав, чи десь помилився. але всі що «не найскладніші» — розв’язувались.

ага, еще распаралелить и на облако))

Паламарчук, перелогинься

Можно поучаствовать в опенсорсе, взявшись за простейшие задачи интересного проекта на гитхабе, попутно разбираясь в нём и прислушиваясь к код-ревью при пул-реквестах.
Можно запилить свою версию фронтенда существующего известного проекта, ну твитер там или фейсбук... Используемые технологии легко нагугливаются.
Для простого бекенда можно использовать тот же джаваскрипт на сервере — node.js, либо простой скриптовый язык, вроде PHP.

По классике: ToDo лист :)

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

Походи по собеседованиям , там иногда тестовые задания дают а бывает что и работу предлагают =)
Вообще многие советуют без наличия опыта делать свой проект , но о success story после этого я пока не слышал .

Другие же пилили всякие лабы и курсовые.

Это же не проект, а так... Задачки

Подписаться на комментарии