Vinnaren i pepparkakshustävlingen!
2016-07-19, 13:55
  #1
Medlem
Nätet svämmar över av hemsidor och böcker med programmeringsövningar, men nu är jag trött på dessa och vill göra något större. Dock är min fantasinivå inte på topp just nu så jag undrar bara om någon har förslag var man kan hitta "större övningar"? Jag menar alltså lite större program där man även får träna på att programmera objektorienterat, med flera klasser, interface, listor, etc. De flesta övningar jag hittar är bara att skriva mindre funktioner. Dessa är roliga men det hade varit skoj med något större som ger lite mer tillbaka om man säger så.
Citera
2016-07-19, 14:28
  #2
Medlem
Gör något program som du har använding för. T.ex. ett program som städar upp skrivbordet, flyttar textfiler till en mapp, bilder till en annan, osv. Din kunskap får styra funktionaliteten. Går ju att göra väldigt enkelt, eller mer avancerat med olika mappar beroende på när filen skapades. Var lite kreativ!
Citera
2016-07-19, 21:21
  #3
Medlem
rjonssons avatar
Ett pong-spel är ju lite av en utmaning men ändå görbart.
Citera
2016-07-19, 21:25
  #4
Moderator
Protons avatar
Java --> Personlig utveckling, studier och arbetsliv
/Moderator
Citera
2016-07-20, 09:40
  #5
Medlem
Citat:
Ursprungligen postat av rjonsson
Ett pong-spel är ju lite av en utmaning men ändå görbart.

Är inte jätte intresserad av att göra spel tyvärr. Men brädspel skulle ju kunna vara något, schack t ex.

Citat:
Ursprungligen postat av Kurt-Douglas
Gör något program som du har använding för. T.ex. ett program som städar upp skrivbordet, flyttar textfiler till en mapp, bilder till en annan, osv. Din kunskap får styra funktionaliteten. Går ju att göra väldigt enkelt, eller mer avancerat med olika mappar beroende på när filen skapades. Var lite kreativ!

Yes, tack för tipset. Börjat grejja med ett program som automatiserar lite saker, öppnar ett rensningsprogram, optimerar SSD, tömmer webbläsar cachen med mera.
Citera
2016-07-20, 13:49
  #6
Medlem
Brunbeverns avatar
Skapa ett lagersystem, hur det är uppbyggt är enligt din egen fantasi. Fast försök efterapa kanske någon teknikaffär där de har säljare och dylikt.

1. Du har en databas med olika föremål i lagret, personal, sålda föremål, bonusar för personal och annan data för dem, planerade inköp, osv...

2. Från denna databas kan du plocka ut all data (på de olika sätt du vill använda datan till). Klasser och sånt för detta behövs ju förstås då vilket övar dig på OOP-koncepten osv och hur du ska kommunicera med databasen osv (SQL-kunskaper bland annat också).

3. Skapa en form av modul/API som används för att plocka ut denna data i det format du vill ha den. SOAP/REST kanske vore något här.

4. Skapa ett separat program (med UI) som använder denna data på ett sätt du vill att den ska göra. Detta genom att anropa det system du skapat i tidigare punkter och få typ XML/JSON-data.

5. Sedan kan du skapa ett system där du lagrar ny data och ändrar i databasen också från ett användarvänligt gränssnitt, dvs något form av administrationssystem.

Citat:
Ursprungligen postat av blork
Är inte jätte intresserad av att göra spel tyvärr. Men brädspel skulle ju kunna vara något, schack t ex.

Då vet jag inte om jag ska rekommendera Schack av alla spel. Schack är nämligen ett väldigt algoritmbaserat spel, den mesta energin skulle gå till algoritmerna för AI:n och dylikt. Detta är förvisso väldigt intressant ur ren datavetenskaplig synvinkel, fast egentligen inget effektivt sätt att träna programmeringskoncept i sig. Då tror jag faktiskt ett annat spel vore en bättre idé.

Citat:
Ursprungligen postat av blork
Yes, tack för tipset. Börjat grejja med ett program som automatiserar lite saker, öppnar ett rensningsprogram, optimerar SSD, tömmer webbläsar cachen med mera.

Ska inte säga att jag har koll på hur dessa typer av program brukar vara uppbyggda. Men risken är att det är lätt hänt att det blir mycket filhanteringsfunktioner mest, vilket ofta inte ens resulterar i så mycket kod alls, utan inbyggda funktioner mest i OS:et.
__________________
Senast redigerad av Brunbevern 2016-07-20 kl. 13:53.
Citera
2016-07-20, 22:51
  #7
Medlem
Citat:
Ursprungligen postat av blork
Är inte jätte intresserad av att göra spel tyvärr. Men brädspel skulle ju kunna vara något, schack t ex.



Yes, tack för tipset. Börjat grejja med ett program som automatiserar lite saker, öppnar ett rensningsprogram, optimerar SSD, tömmer webbläsar cachen med mera.


Bra idé. Kanske lånar den och uppdaterar mitt program lite.
Citera
2016-07-21, 10:20
  #8
Medlem
Citat:
Ursprungligen postat av Brunbevern
Skapa ett lagersystem, hur det är uppbyggt är enligt din egen fantasi. Fast försök efterapa kanske någon teknikaffär där de har säljare och dylikt.

1. Du har en databas med olika föremål i lagret, personal, sålda föremål, bonusar för personal och annan data för dem, planerade inköp, osv...

2. Från denna databas kan du plocka ut all data (på de olika sätt du vill använda datan till). Klasser och sånt för detta behövs ju förstås då vilket övar dig på OOP-koncepten osv och hur du ska kommunicera med databasen osv (SQL-kunskaper bland annat också).

3. Skapa en form av modul/API som används för att plocka ut denna data i det format du vill ha den. SOAP/REST kanske vore något här.

4. Skapa ett separat program (med UI) som använder denna data på ett sätt du vill att den ska göra. Detta genom att anropa det system du skapat i tidigare punkter och få typ XML/JSON-data.

5. Sedan kan du skapa ett system där du lagrar ny data och ändrar i databasen också från ett användarvänligt gränssnitt, dvs något form av administrationssystem.



Då vet jag inte om jag ska rekommendera Schack av alla spel. Schack är nämligen ett väldigt algoritmbaserat spel, den mesta energin skulle gå till algoritmerna för AI:n och dylikt. Detta är förvisso väldigt intressant ur ren datavetenskaplig synvinkel, fast egentligen inget effektivt sätt att träna programmeringskoncept i sig. Då tror jag faktiskt ett annat spel vore en bättre idé.



Ska inte säga att jag har koll på hur dessa typer av program brukar vara uppbyggda. Men risken är att det är lätt hänt att det blir mycket filhanteringsfunktioner mest, vilket ofta inte ens resulterar i så mycket kod alls, utan inbyggda funktioner mest i OS:et.


Tack för tipset! Börjat med att modelera både databasen och programmet.
Citera
2016-07-29, 18:29
  #9
Medlem
mygans avatar
Att hitta "uppgifter" kan vara lite klurigt ibland, men när jag själv vill bli duktigare inom programmering brukar jag kolla på vad det finns för typ av produkter ute i livet. Och som någon annan nämnde tidigare i tråden kan man även lägga till kriteriet att det kan vara nödvändigt för en själv.

Ett projekt kan ju vara att faktiskt bygga ett projekt-hanterings system, som du special-anpassar för dig själv och hur du jobbar(finns massvis med typer av projekt-hantering).

Men du kan även ge dig in på lite tyngre grejer så som att bygga affärssystem, där man programmerar ett stort system med många olika delar, typ bygga ett affärssystem för en webshop. Ett affärssystem kan t.ex ha flera delar, så som:
  • CRM Customer Relationship Management för hantering av kund- och även leverantörskontakter
  • SCM Supply Chain Management för hanteringen av försörjningskedjan (beställningar till underleverantörer, leveranser etc.)
  • MES Manufacturing Execution System för styrning och övervakning av produktionsprocesser
  • LIMS Laboratory Information Management System för hantering av provtagning i samband med tillverkning
  • PDM Product Data Management för hantering av (komplexa) produkter, där man samlar information om själva produkten
  • Automatiska avstämningar, ett sätt att hantera avstämningsprocesser, till exempel i månadsrapporter, helt automatiskt
(Lista kopierad av wikipedias artikel och innehåller inte nödvändigtvis allt som kan finnas i ett affärssystem)

Detta skulle då inte bara ge dig en utmaning att bli en bättre utvecklare, utan du blir oxå insatt i hur en affärsverksamhet fungerar. Du kan ta inspiration om hur system fungerar från andra liknande hemsidor, och skapa dig själv någon slags specifikation att gå efter.

Andra tips kan ju vara att bygga ett bokningssystem(som även det används i det riktiga arbetslivet), kanske ett system för skolor(hantering av kurser, lärare, elever, föräldrar, kursmaterial, typ moodle).

Kolla runt lite vad som finns i din omgivning, man vill ju bygga det som folk behöver, så mitt allra bästa tips är ju att ta reda på vad folk(även du själv) och företag behöver, och finns det dom redan behöver kan du ju ha det som ett projekt för att enbart lära dig(och kanske även göra det bättre en det system som redan finns.).

Jag hoppas att detta ger dig lite inspiration på vad du kan tänkas programmera i framtiden!

Happy hacking!
Citera
2016-08-12, 22:59
  #10
Medlem
christerys avatar
Börja med en MUD/MOO och bygg ut den till en MMORPG så har du vad du gör för ett tag.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback