Sopivin kieli GUI-ohjelmointiin

0lio

Pitäisi tehdä töihin pieni ja kevyt graafinen ftp-client sovellus, jossa on oltava seuraavat toiminnot:

- login
- logout
- get/mget
- put/mput
- rename
- delete
- ls
- client koneen hakemiston selaus get/mget toimintoa varten

Eli toiminnot ovat hyvin perinteisiä ja kun kyseessä on kevyt ohjelma, ei sen kummepia toimintoja tarvita. Toki netti on pullollaan valmiita ftp clientejä, mutta niissä on aivan liikaa toimintoja ja asetuksia, joiden kanssa kokematon käyttäjä menee solmuun. Tämän sovelluksen toimintaperiaate on ns. "for dummies", eli helppo ja yksinkertainen. Ideana hyvä, mutta miten valita sitten se GDI ja kieli, jolla tuollaisen voisi/kannattaisi tehdä. Vaihtoehtoja olisivat C , .NET/C# tai Java. Sovelluksen käyttöönotto pitäisi olla helppoa, joten mitään ylimääräisiä frameworkeja yms. ei pitäisi joutua asentamaan pohjalle. Millä tuollainen sovellus kannattaisi koodata?

23

232

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • jaapajaa

      Eiköhän tuollainen suju millä vaan. Käsittääkseni .NET on Microsoftin virityksiä, joten jos haluat sovelluksen toimivan Maceissä tai Linuxissa, niin ei varmaankaan kannata tehdä sillä. Itse osaan parhaiten Pythonia ja C :aa, joten tekisin jommalla kummalla.

      Yksi vaihtoehto toteutukselle voi myös olla jonkun valmiin avoimen lähdekoodin ohjelman muokkaaminen mieleiseksi.

    • Osaatko?

      Sujuu millä vaan mutta huonoja valintoja on:
      C# (dotnet -riippuvuus -> päivityksiä ymv turhaa sälää)
      Java ( käytännössä sama syy kuin C#:ssa tekijät vain eri)
      Python (mm tulkki -riippuvuus)

      Mitä jää jäljelle:
      C/C ( ja ohjelmoinnin hitaus, vaarana myös riippuvuudet )
      - CBuilder (maksullinen)
      - Delphi (Maksullinen, oletko Pascal taitoinen)
      - Lazarus(oletko Pascal taitoinen)

      Eli valinta on tehdä USB-tikulla toimiva helposti siirrettävä GUI ohjelma
      Lazaruksella joka käyttää joko lNet tai INDY-kirjastoa.

      • 0lio

        Delphi 7:aa olen joskus opiskellut käyttämään, eli jos vanha muisti pelaa, niin Pascal saattaa onnistuakin. Siitä on tosin ainakin 10-vuotta aikaa ja julkaistaanko Delphiä enää ylipäänsä?

        C/C ohjelmointia voi tehdä tosin NetBeansillakin. Siihen ei taida vakiona sisältyä GUI-kirjastoa, vaan siihen pitää integroida Qt-kirjasto, josta ne formit saa käyttöön.

        Olin aivan unohtanut, että voihan ftp:tä käyttää myös selainpohjaisella web-sovelluksella. Ainakin PHP:stä löytyy ftp-funktioita. Tällöin ei ainakaan tarvita sen kummempia rajapintoja, vaan netti ja selain riittävät :)


      • Delphi on aika uusi
        0lio kirjoitti:

        Delphi 7:aa olen joskus opiskellut käyttämään, eli jos vanha muisti pelaa, niin Pascal saattaa onnistuakin. Siitä on tosin ainakin 10-vuotta aikaa ja julkaistaanko Delphiä enää ylipäänsä?

        C/C ohjelmointia voi tehdä tosin NetBeansillakin. Siihen ei taida vakiona sisältyä GUI-kirjastoa, vaan siihen pitää integroida Qt-kirjasto, josta ne formit saa käyttöön.

        Olin aivan unohtanut, että voihan ftp:tä käyttää myös selainpohjaisella web-sovelluksella. Ainakin PHP:stä löytyy ftp-funktioita. Tällöin ei ainakaan tarvita sen kummempia rajapintoja, vaan netti ja selain riittävät :)

        Tuorein delphi on vain 3 kuukautta vanha!
        http://www.moonsoft.fi/products/000479.aspx


    • Avoimin mielin

      Viisainta olisi tutkia avoimen koodin ohjelmia ja ottaa niistä joku. Sitten arvioit, kelpaako se sellaisenaan vai muokkaatko sitä simppelimmäksi.
      Tyhjästä voi olla huono lähteä.

    • 0lio

      Ennenkuin aletaan tehdä yhtään mitään, niin kysytääs hieman sovelluskehityksen kaupallisuudesta. Esimerkiksi Delphi ja .NET/C# ovat kaupallisia kehitysympäristöjä. Jos nyt tekisin tuon ftp client-sovelluksen jollain edellä mainituista, niin miten minun pitää ottaa kehitysympäristön lisenssi ja kaupallisuus huomioon, jos markkinoin tekelettäni eteenpäin?

      • ".NET/C# ovat kaupallisia kehitysympäristöjä."

        Mitä h**vettiä sä oikein höriset??? .NET kaupallinen????
        Taidat sekoittaa Visual Studioon.


    • harvoin huolta

      Riippuu tapauskohtaisesti. Mutta oman osuutesi voit lisenssoida niin kuin haluat (tai yritys voi niin tehdä). Jos käytät jonkun muun tekemiä kirjastoja niin joudut noudattamaan heidän lisenssejä. Yleisesti ottaen kehitysympäristön lisenssi ei rajoita niillä tehtyjen sovellusten lisenssejä (olkoon kyseessä kaupallinen tai avoimeen lähdekoodiin perustuva kehitysympäristö). Asia nuuttuu ratkaisevasti sitten kun otat käyttöön muiden tekemiä kirjastoja.

      Jotkut oppilaitosversiot ymv ovat eri asia

      • 0lio

        Kiitos tiedosta! Nyt kun tässä olen asiaa pyöritellyt ja hahmotellut, niin olen tullut siihen tulokseen, että alan kehitellä tuota ftp-sovellusta web-ympäristöön. Se kun on minulle noista ketjussa esillä olleista tekniikoista ja ympäristöistä tutuin. Voihan sitä myöhemmin tehdä sitten toisen version jollain GUI-työkalulla, mutta ainakin pääsen hyvin alkuun vaikkapa PHP:llä.


      • 10+10
        0lio kirjoitti:

        Kiitos tiedosta! Nyt kun tässä olen asiaa pyöritellyt ja hahmotellut, niin olen tullut siihen tulokseen, että alan kehitellä tuota ftp-sovellusta web-ympäristöön. Se kun on minulle noista ketjussa esillä olleista tekniikoista ja ympäristöistä tutuin. Voihan sitä myöhemmin tehdä sitten toisen version jollain GUI-työkalulla, mutta ainakin pääsen hyvin alkuun vaikkapa PHP:llä.

        PHP on serveripään ohjelmointikieli, ja siellähän homman hoitaa sen ftp-daemon ja sopivat käyttäjätunnukset/oikeudet ftp-hakemistoissa (ja clientihän nyt on haussa).

        Mikä vika FireFTP:ssä (FF:n lisäosa), se on simppeli ja tukee myös salattua yhteyttä kuten sftp..

        -------------------------------

        Missä se palvelin on? Mikäli sinne on vain http-yhteys auki ja tarvii tehdä http-login, niin sitten se koodaus tulisi serveripäähän (vaikka php:llä/perlillä) ja client olisi vain selain (nyt näin ei käsittääkseni ole), muuten en tekisi näin.

        ---------------------------------

        Itse olen tehnyt joskus jonkun simppelin web-clientin perlillä, mutta siinä ei juuri guita ollut. Jonkun tällaisen ihan palikan tekisin, jos ei FireFTP käy, muuten menee aika työlääksi.


      • 0lio
        10+10 kirjoitti:

        PHP on serveripään ohjelmointikieli, ja siellähän homman hoitaa sen ftp-daemon ja sopivat käyttäjätunnukset/oikeudet ftp-hakemistoissa (ja clientihän nyt on haussa).

        Mikä vika FireFTP:ssä (FF:n lisäosa), se on simppeli ja tukee myös salattua yhteyttä kuten sftp..

        -------------------------------

        Missä se palvelin on? Mikäli sinne on vain http-yhteys auki ja tarvii tehdä http-login, niin sitten se koodaus tulisi serveripäähän (vaikka php:llä/perlillä) ja client olisi vain selain (nyt näin ei käsittääkseni ole), muuten en tekisi näin.

        ---------------------------------

        Itse olen tehnyt joskus jonkun simppelin web-clientin perlillä, mutta siinä ei juuri guita ollut. Jonkun tällaisen ihan palikan tekisin, jos ei FireFTP käy, muuten menee aika työlääksi.

        Eli tässä tapauksessa homma menisi näin:

        Palvelimella pyörii ftp- sekä http-daemonit. Ftp-käyttäjä kirjautuisi palvelimelle selaimella webbisivulla olevan linkin kautta. Selain toimisi siis clienttina. Se kysyy ftp-tunnukset, jonka jälkeen käyttäjä pääsee kotihakemistoonsa.

        Kuten tuossa aloituksessa mainitsin, niin tarkoitus olisi tehdä ftp-client "for dummies", eli mitään ylimääräisi toimintoja käyttöliittymässä ei tarvita, vaan sen pitäisi olla mahdollisimman yksinkertainen käytettävyydeltään. Eli miltei sokeankin pitäisi pystyä käyttämään sitä ;)


    • hmh.

      Tekisin Qt:n C kehitysympäristöllä.

      Helppo tehdä ja saa tarvittaessa helposti siirrettyä muillekkin alustoille, kuin windowsille . . .

      • 0lio

        Qt:stä minulla ei ole pahemmin kokemusta, muuta kuin sen verran, että tiedän sen olevan jonkin asteisesti kotimainen tekele. Mites sen kaupallisuus?


      • QT:sta
        0lio kirjoitti:

        Qt:stä minulla ei ole pahemmin kokemusta, muuta kuin sen verran, että tiedän sen olevan jonkin asteisesti kotimainen tekele. Mites sen kaupallisuus?

        QT on eräällä tavalla malliesimerkki siitä miten valittu väärä kieli toteutukseen (jota välttämättä tekijät ymmärrä vieläkään). QT on kirjoitettu C :lla mutta jos he olisivat tehneet sen fiksusti niin se olisi kirjoitettu C:llä.

        (Voi olla ettet heti ymmärrä tätä pointtia)

        Se ketkä kärsivät tästä ratkaisusta ovat QT:n käyttäjät (asiakkaat) esim. Jolla (jollla ei ole vieläkään palonkaan natiivisovelluksia).

        C:n etu tässä olisi sen yksinkertaisuus verrattuna C :n. Kun on yksinkertainen niin siihen helppo tehdä muita sovelluksia. (Esim. Linux on kirjoitettu C:llä).

        Tämä ei tarkoita sitä että C olisi huono vaan sitä että asiassa pitäisi ottaa muitakin näkökulmia


      • QT:sta kirjoitti:

        QT on eräällä tavalla malliesimerkki siitä miten valittu väärä kieli toteutukseen (jota välttämättä tekijät ymmärrä vieläkään). QT on kirjoitettu C :lla mutta jos he olisivat tehneet sen fiksusti niin se olisi kirjoitettu C:llä.

        (Voi olla ettet heti ymmärrä tätä pointtia)

        Se ketkä kärsivät tästä ratkaisusta ovat QT:n käyttäjät (asiakkaat) esim. Jolla (jollla ei ole vieläkään palonkaan natiivisovelluksia).

        C:n etu tässä olisi sen yksinkertaisuus verrattuna C :n. Kun on yksinkertainen niin siihen helppo tehdä muita sovelluksia. (Esim. Linux on kirjoitettu C:llä).

        Tämä ei tarkoita sitä että C olisi huono vaan sitä että asiassa pitäisi ottaa muitakin näkökulmia

        "C:n etu tässä olisi sen yksinkertaisuus verrattuna C :n. Kun on yksinkertainen niin siihen helppo tehdä muita sovelluksia."

        QT:hen en ota kantaa ku ei ole tarpeeksi kokemusta mutta C:llä nyt on yksinkertaista vaan "hello world". Vähäkin laajempi sovellus ja homma hajoaa käsiin, jos et ole rautainen ammattilainen.


    • m o t

      Jo otsikosta huomaa, ettet tiedä asiasta mitään.

      • m o t

        Tämä oli osoitettu nimimerkille "QT:sta".


    • vitun pälli

      "mutta miten valita sitten se GDI ja kieli"

      GDI? Ei sitä valita, kun se löytyy jokaisen Windowsin ytimestä. Opettele käsitteet ennen kuin tulet tänne kyselemään ummet ja lammet.

      • hemmetin älykääpiö

        Eikö sitä yleensä siksi kysytä, kun ei osata. :)


      • 0lio

        Pidetään keskustelu asiallisena.


    • kätevää ja helppoa

      yksi tapa toteuttaa asia on expect-skripti, jota pyöritetään tcl/tk skriptin kautta. Avataan siis yksinkertaisesti vaikka lftp skriptakielen läpi ja lähetellään sille komentoja GUI:sta. Erittäin helppo toteuttaa, kannattaa myös tutustua wish:iin!

    • Valmiina löytyisi Filezilla, ja voi myös vaikka ottaa sen lähdekoodit ja riisua tarpeettomat toiminnot pois.

      Mutta, todennäköisesti teet homman perustavalla tavalla väärin. Miksi käyttää FTP:tä kun voisit lähettää tiedostot selaimella?

    • blackbox

      Tcl/Tk ja Lua sopii tähän tarkoitukseen vallan hyvin. Python ja Ruby sopii myös.
      Itse olen omaan käyttöön tehnyt graafisia käyttövalikoita Component Pascalilla. Tämä on Pascalin eräs versio.
      Tälle on saatavissa aika kiva IDE ympäristökin: BlackBox.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Näin lähellä

      Se on näin 🤏 lähellä että heitän hanskat tiskiin sun kanssasi.
      Ikävä
      83
      3546
    2. Kerro jotakin hauskaa. :)

      Kirjoita jotakin mukavaa vaikka kaivatustasi. :) Ei törkytekstejä kiitos. :)
      Ikävä
      80
      3226
    3. Mä sanon tän suoraan.

      Se on sun käytös mikä ajaa pois. Et välitä muitten tunteista kun omistasi.
      Ikävä
      68
      3062
    4. On olemassa tiettyjä sääntöjä!

      Ja jos aiot pärjätä mun kanssa niin teet vain niinkuin mä sanon. Mieheltä Naiselle
      Ikävä
      70
      2720
    5. Oliko pakko olla taas tyly?

      Miksi oot niin tyly mua kohtaan nykyään? Ei edes tunneta kunnolla. Katseita vaihdettu ja varmasti tunteet molemmin puoli
      Ikävä
      44
      2222
    6. Olen niin yksinäinen...

      ... puhukaa mulle jotain kivaa 🥺
      Ikävä
      65
      1802
    7. Huomenna heitän järjen

      romukoppaan ja annan tunteen viedä. Kerran tässä kuitenkin vain eletään. Muistan myös jonkun minua viisaamman sanoneen,
      Ikävä
      26
      1761
    8. Lähtisitkö nainen

      🚐Reissuun matkailuautolla🤔 👋😎❤️
      Ikävä
      35
      1735
    9. Hyvää huomenta

      Hyvää huomenta ja alkavaa viikonloppua ihanalle naiselle! Mitä ikinä teetkään, niin täälä sua yksi miekkonen ajattelee.
      Ikävä
      18
      1699
    10. Perjantai-ilta ootko nainen menos

      Bilettää löytyyks jäbii? Tai jotain muita
      Ikävä
      60
      1658
    Aihe