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

143

    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. Tärkeä kysymys!

      Haluatko sinä, mies, minut?
      Ikävä
      88
      1174
    2. Asiallinen lähestyminen

      Mitä on asiallinen lähestyminen?? Tietääkö tai tajuaako kukaan, varsinkaan miehet??? Eilen NELJÄNNEN kerran jouduin isk
      Sinkut
      151
      1006
    3. Jennika Vikman avoimena - Isosisko Erika Vikman ohjeisti napakasti Tähdet, tähdet -kisaan: "Älä.."

      Jennika ja Erika - niin ovat kuin kaksi marjaa! Ilmeiltään, ääneltään ja eleiltään hyvinkin samanlaiset - toinen on kyll
      Suomalaiset julkkikset
      13
      691
    4. En tiedä..

      Yhtään minkälainen miesmaku sinulla on. itse arvioin sinua moneenkin otteeseen ja joka kerta päädyin samaan lopputulokse
      Ikävä
      48
      687
    5. Vedalainen metafysiikka

      Termi ”metafysiikka” kuuluu Aristoteleelle. Metafysiikka tarkoittaa ”fysiikan jälkeen” eli tietoa siitä, mikä on tavalli
      Hindulaisuus
      287
      685
    6. Mitäs nainen

      Meinaat tehdä viikonloppuna.
      Ikävä
      60
      674
    7. Ai jaa sinä oletkin ahnas

      Ja romanttinen luonne, nyt vasta hiffasin että olet naarastiikeri. Parempi myöhään kuin ei milloinkaan.
      Ikävä
      107
      660
    8. En oikeastaan usko että sinä tai kukaan

      Olisi oikeasti ihastunut tai rakastunut. Se on joku harhakuva joka minusta miehestä syntyi. Ja kun se särkyy, niin "tunt
      Ikävä
      42
      604
    9. Viime yönä mietin paikkoja luonnossa, missä olen kulkenut

      kävellyt ja ikävöinyt, ja ollut niin yksin. Monet kerrat. Ne palauttavat mieleeni sinut ja sen, kuinka kipeää on se kaip
      Ikävä
      57
      602
    10. Milloin viimeksi näit ikäväsi kohteen?

      Oliko helppo tunnistaa hänet? Millaisia tunteita tuo näkeminen herätti sinussa?
      Ikävä
      35
      575
    Aihe