• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Brak pomysłu na następny projekt.

Object Storage Arubacloud
+2 głosów
1,118 wizyt
pytanie zadane 10 czerwca 2018 w C i C++ przez ikcilrep Początkujący (270 p.)
zamknięte 11 czerwca 2018 przez ikcilrep
Witam, mam 12 lat, pisałem w kilkunastu językach : C, C++, Java, Python, Haskell, VB.NET, C#, JavaScript, Go, Ruby, SQL, Kotlin i jeśli zaliczają się do języków programowania to HTML i CSS, ale skupiam się na Javie i Pythonie. Z ciekawszych rzeczy napisałem swój języków programowania, generator analizatorów leksykalnych, przeglądarkę internetową, algorytm szyfrujący i funkcję skrótu. Od pewnego czasu nie mam jednak pomysłu co dalej napisać, żeby nie było zbyt proste i jednocześnie w jakiś sposób przydatne, dlatego chciałem się zapytać czy ktoś z was ma jakiś pomysł na ciekawy, zaawansowany projekt w którymś z wymienionych powyżej języków, który nie jest grą, stroną internetową, ani aplikacją na telefon?
komentarz zamknięcia: Otrzymałem odpowiedź.

7 odpowiedzi

+3 głosów
odpowiedź 10 czerwca 2018 przez mokrowski Mędrzec (155,460 p.)
wybrane 10 czerwca 2018 przez ikcilrep
 
Najlepsza
To bardzo dobrze że interesujesz się wieloma językami programowania. Jednak (jak zapewne zauważyłeś), spośród tych które poznajesz, wiele ma te same koncepcje. Jeśli chcesz poszerzyć swoją wiedzę, proponuję zapoznać się raczej nie z tym co popularne, a z tym co może Cię rozwinąć.

Moja (subiektywna lista):

1. Java, C++, C, C# - co kto lubi, w danym zakresie i w danym zastosowaniu....

2. Python, Ruby, JavaScript - oczywiście... dynamiczne skryptowe

3. Haskell, rodzina ML (np. OCAML), F# - inne podeście i paradygmat...

3. Prolog - jeden z języków deklaratywnych.

4. LISP, lub prostszy Scheme - tradycja a wręcz Zen programowania....

Języków programowania warto uczyć się do poziomu w którym będziesz w stanie porównać ich idiomy i smaczki.

A co do projektu, proponuję bardzo praktyczny:

Stworzenie programu który po podaniu katalogu z plikami dokona ich posortowania ze względu na typ i wykona backup kompresowany dowolnym algorytmem. Całość pracy powinna być wykonana w locie bez niepotrzebnego kopiowania plików.

"Łączenie i ustawianie plików" ze względu na ich typ tak aby były "obok siebie w archiwum", spowoduje że archiwum będzie mniejsze. To prosty i nietrywialny projekt w języku który (co wnoszę z listy) wystarczająco dobrze znasz :) Proszę porównaj wyniki z backupem bez szeregowania i z...
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Chyba jak na razie najciekawszy pomysł, a co do niepopularnych języków, które mogą mnie rozwinąć to właśnie, dlatego zacząłem interesować się Haskellem.
1
komentarz 10 czerwca 2018 przez mokrowski Mędrzec (155,460 p.)
No to jeszcze Prolog lub jakiś z więzami. Tu możesz się tymi językami pobawić online. Są przykłady: https://swish.swi-prolog.org/example/examples.swinb

Np. słynna zagadka Einsteina: https://swish.swi-prolog.org/example/houses_puzzle.pl
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Zobaczę, ale najpierw lepiej ogarnę Haskella.
+4 głosów
odpowiedź 10 czerwca 2018 przez Hiskiel Pasjonat (22,830 p.)
edycja 10 czerwca 2018 przez Hiskiel

Witam, mam 12 lat, znam kilkanaście języków programowania: C, C++, Java, Python, Haskell, VB.NET, C#, JavaScript, Go, Ruby, SQL, Kotlin i jeśli zaliczają się do języków programowania to HTML i CSS.

 Chwalisz się, czy jak? Jeśli te języki wymieniałeś żebyśmy wiedzieli jaki projekt Ci polecić to wiedz, że napiszesz wszystko w wszystkim. Nawet w brainfacku, czy od palca w binarce.

napisałem swój języków programowania

 niezbyt orientuję się w języku assembly i niskopoziomowym programowaniu

To się mija z celem. 

niezbyt otientuję się w języku assembly i niskopoziomowym programowaniu

[...] znam kilkanaście języków programowania: C, C++ [...]

Są to niskopoziomowe języki. 

generator analizatorów leksykalnych, przeglądarkę internetową, algorytm szyfrujący i funkcję skrótu

Ile z tego to tylko i wyłącznie Twoje własne algorytmy, funkcje, to co pamiętasz?

C, C++, Java, Python, Haskell, VB.NET, C#, JavaScript, Go, Ruby, SQL, Kotlin i jeśli zaliczają się do języków programowania to HTML i CSS.

 Znasz te języki w stopniu przynajmniej ponadpodstawowym, czy tylko ich urywki potrzebne do projektów?

Tak btw. Znasz tyyyyyyle języków, napisaleś takie wspaniaaałe projekty. A wiesz co jest pod pokrywką? Zainteresuje się budową komputera, RAMem, procesorem - rejestrami, asmem. Jeśli naprawdę to ogarniesz to będziesz pisał lepszy kod.

 

 

Jeśli chodzi o projekt to dlaczego poprzestać na grze? A dlaczego poprzestać aplikacji na telefon czy stronie internetowej? Spróbuj przepisać tą przeglądarkę w C++, jeśli pisałeś ją w innym języku. Lub przepisz każdą "ciekawszą" aplikację do C lub języka w którym będzie to najtrudniejsze. Postaw sobie wyzwanie. Jeśli pisałeś ten generator analizatorów leksykalnych w Pythonie, to spróbuj w Javie. Algorytm szyfrujący? Brzmi fajnie. Spróbuj napisać stronę, algorytm (cała aplikacja) w pythonie. Połącz to, nauczysz się dwóch rzeczy. Widzisz ile masz pomysłów? Tak naprawdę niczego Ci nie podpowiemy, pod tym co napisałeś może się kryć wybitny programista któremu można polecić napisanie np. AI lub zwykły klepacz kodu.

 

Pozdrawiam.

komentarz 10 czerwca 2018 przez Hiskiel Pasjonat (22,830 p.)
No dobra, a masz coś w C/C++ co byś mógł podrzucić? Python itd to nie moja działka.
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)

@Swipeyro, W takim razie wychodzą trzy języki mniej.

komentarz 10 czerwca 2018 przez Hiskiel Pasjonat (22,830 p.)
Obawiam się, iż nie rozumiem. Nie masz projektów w tych językach czy jak?
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
W C/C++ nie pisałem większych projektów, a te mniejsze, które pisałem dawno się gdzieś zgubiły po wielu formatach dysku.
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Mam, ale jak skończyłem je pisać to przestawałem pisać w tych językach, więc musiałbym sobie przypomnieć.
+3 głosów
odpowiedź 10 czerwca 2018 przez RafalS VIP (122,820 p.)

System operacyjny napisz :D.

A tak btw:

mam 12 lat, znam kilkanaście języków

Uderzaj na harvard zamiast do kolejnej klasy podstawówki :D

komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
edycja 10 czerwca 2018 przez ikcilrep
Niezbyt orientuję się w języku assembly i w niskopoziomowym programowaniu ogólnie, więc musiałbym się trochę nauczyć.
1
komentarz 10 czerwca 2018 przez Eryk Andrzejewski Mędrzec (164,260 p.)

No to dalej, ledwie "umiesz" klikanaście języków i na laurach chcesz spoczywać? laugh

komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Nie chcę spoczywać na laurach, planuję się Assembly NASM trochę pouczyć w wakacje, dlatego napisałem "musiałbym się trochę nauczyć", ale do systemu operacyjnego to daleko. Niektóre języki znam lepiej, niektóre gorzej, ale raczej nie ledwie.
komentarz 10 czerwca 2018 przez RafalS VIP (122,820 p.)
A ja nie znam się na pisaniu systemów operacyjnch, ale na internecie piszą, że w tej kwestii przoduje C, które znasz :P
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Jednak w czymś trzeba napisać bootloader :).
komentarz 10 czerwca 2018 przez RafalS VIP (122,820 p.)
Skoro wilcza część będzie napisana w C to zawsze bootloader możesz skądś zerżnąć. A z resztą jak kolega już wspomniał - przy takiej znajomości programowania możesz klepać binarki z głowy :D
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Zawsze jest to jakieś rozwiązanie, i tak chociaż podstaw Assembly się nauczę, żeby lepiej zrozumieć całość.
komentarz 10 czerwca 2018 przez RafalS VIP (122,820 p.)
Tak na marginesie. Jak się szuka pierwszej pracy to warto nie wpisywać za dużo języków. Bo CV w którym ktoś twierdzi, że bez doświadczenia zawodowego i przy młodym wieku (mam na myśli 20 pare lat :D) zna dużo języków jest niewiarygodne i odpada na pierwszym etapie.
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Mi jeszcze trochę daleko do szukania sobie pracy, ale dzięki za radę.
+3 głosów
odpowiedź 10 czerwca 2018 przez lateM Pasjonat (17,660 p.)

Oj, wyluzujcie trochę laugh Lepiej żeby "lekko przeceniał swoje umiejętności", niż oglądał patostreamy na youtube.

Myślę, że ktoś Ci doradzi za co się zabrać, jeśli pokażesz co faktycznie umiesz. Skup się na jakimś języku i daj do code review. Jakiś ekspert z pewnością powie Ci co jak

 

komentarz 10 czerwca 2018 przez niezalogowany
Pierwsza w pełni konstruktywna odpowiedź ;P
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)

@MateuszB, Może to, że napisałem "znam" to źle się wyraziłem, ale chodziło mi, że w tych językach mogę coś napisać. W każdym razie nie mam pomysłu co napisać dalej.

+1 głos
odpowiedź 11 czerwca 2018 przez Kamil Naja Nałogowiec (27,410 p.)
Daj linka do swoich projektów
komentarz 11 czerwca 2018 przez ikcilrep Początkujący (270 p.)

Generator analizatorów leksykalnych - https://github.com/Frajerzycki/LexerBuilder . Jak znajdę resztę na dysku to wrzucę na Githuba.

0 głosów
odpowiedź 10 czerwca 2018 przez DragonCoder Nałogowiec (36,500 p.)
Dobre pytanie, ile z tych jezykow znasz na tyle, zeby zamnkac oczy i napisac program na slepo? Bo ja majac 19 znam C++ i to podstawy, FreePascal i ObjetivPascal, podstaw CSS i HTML, liznalem troche C, ale to sa raczej podstawy podstaw. wiec skad Ty znasz az tyle jezykow. Ale nie patrzac na to, nie wiem jak napisales wlasyn jezyk, nie znjac niskopoziomowego programowania i fajnie byloby zobaczyc te Twoje projekty, moze mozna cos poprawic? Bo ja tez moge napisac program, ktory bedzie mial 20k linii kodu w jednym pliku i bedzie potrzebowal 2 min, zeby wykonac operacje, albo moge napisac ten sam program w 5 linii kodu i bedzie sie wykonywal 10 sekund, to ze cos dziala, nie znaczy ze nie moze lepiej. Nie rozumiem, co masz przeciwko grze, bo to chyba nie jest malo zaawansowany projekt, chyba ze sie myle?
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Znam tyle języków, bo się tym naprawdę interesuję i dość wcześnie zaczynałem. Niektóre znam lepiej, a niektóre gorzej. Dużo projektów mi się pogubiło, ale na potrzeby tego posta wstawiłem jeden na Githuba: https://github.com/Frajerzycki/LexerBuilder - generator analizatorów leksykalnych (zrobiłem to jako klasę, ponieważ stawiam na łatwość w obsłudze). Język napisałem "tłumacząc" z mojego języka na język niższego poziomu - Go, niekoniecznie musi to być język maszynowy albo Assembly. Nigdzie nie napisałem, że gra to mało zaawansowany projekt, ja po prostu zbytnio nie lubię pisać gier.
komentarz 10 czerwca 2018 przez DragonCoder Nałogowiec (36,500 p.)
Wlasny jezyk programowania, ma takze kompilator, a pewnie go nie napisales? Na Twoim miejscu, zamiast uczyc sie pierdyliarda jezykw, skupilbym bym sie np na 3 -4 i ogarnal je, a nie znam bo znam i tyle mi wystarcza
4
komentarz 10 czerwca 2018 przez criss Mędrzec (172,590 p.)

nie wiem jak napisales wlasyn jezyk, nie znjac niskopoziomowego programowania

Normalnie. Wymyślasz sobie składnie i piszesz interpreter. Nikt nie powiedział, że ten język będzie kompilowany do kodu maszynowego. Niskopoziomowe programowanie czy jego brak nie ma nic do rzeczy.

komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
https://pl.wikipedia.org/wiki/Kompilator

Kompilator nie musi tłumaczyć na Assembly albo język maszynowy. To jest po prostu coś co tłumaczy z jednego języka na inny niższego poziomu. Najbardziej skupiam się na Javie, Pythonie. Co nie zmienia faktu, że czasami lubię sobie programować w czymś innym.
komentarz 10 czerwca 2018 przez DragonCoder Nałogowiec (36,500 p.)
No ja nie widze sensu kompilowania na 15 jezykow, ale dobra, mniejsza z tym.

 

No to skoro piszesz w Pytahnie, to przydalby sie YT v2, ktory moze dzialalby lepiej niz ten teraz. Mozna napisac prosy system lub nawet symulatory, jest tyle platnych programow, ktore mozna napisac i udostepnic jako darmowe, zeby ludzie mogli z nich korzystac. Pomysl o tym.
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Czym jest w takim razie YT v1?
komentarz 10 czerwca 2018 przez niezalogowany
Wydaje mi się, że chodzi mu o YouTube (był pisany w Pythonie)
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Dość ciekawa propozycja.
komentarz 11 czerwca 2018 przez DragonCoder Nałogowiec (36,500 p.)
Dokladnie chodzi o YouTube, tylko ze moim zdaniem powoli spada on na psy. Wiec przydaloby sie jakis fajny serwis, bazujacy na nim
0 głosów
odpowiedź 10 czerwca 2018 przez jankustosz1 Nałogowiec (35,880 p.)
Napisz np. coś sieciowego, w c# aplikację w WPF(polecam się nauczyć, bo to przyszłość) w której jest logowanie do serwera i użytkownicy dyskutują na czacie. Niby proste, ale trzeba ogarnąć wielowątkowość i programowanie sieciowe.

Polecam ogarnąć SFML na c++ lub c# (jakiś odpowiednik na javę też tego jest) i napisać jakiś ciekawy program, niekoniecznie grę. To powinno dobrze nauczyć programowania obiektowego.

Oczywiście nie poprzestawaj na jednym projekcie rób to co jest ciekawe, pomysły na gry same wpadają (zrobienie sieciowej gry daje bardzo duże doświadczenie)

Polecam także zainteresować się Selenium. W c# lub javie można banalnie zrobić bota do stron internetowych. Daje to dużo satysfakcji.
komentarz 10 czerwca 2018 przez ikcilrep Początkujący (270 p.)
Możliwie, że zrobię w Javie, bo aktualnie używam Linuxa i z WPF jest dość ciężko.

Podobne pytania

0 głosów
5 odpowiedzi 766 wizyt
–5 głosów
3 odpowiedzi 370 wizyt
0 głosów
4 odpowiedzi 1,287 wizyt

92,535 zapytań

141,376 odpowiedzi

319,449 komentarzy

61,920 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...