Heip
En vastaavaa aloitusta löytänyt, mutta oletettavasti kaikkia jollain tapaa koskettava aihe. Ainakin minulla itseopiskelleena harrastelijalla on aukkoja sivistyksessä. Itse en tällä tiedolla varsinaisesti mitään tee, muutta alkoi kiinnostamaan.
Tätä päivää on, että ohjelmaa pystyy käyttämään työpöytäversiona ainakin PC:llä ja Macilla ja ehkä myös linuxilla. Chromebookki on nyt kanssa uusi juttu, joka alkaa olla pakko huomioida. Sitten iOS, Android versiot pitää olla jossain suppeammassa muodossa. Mikä siis on tämän päivän "oikea tapa" rakentaa laaja ohjelmisto? Ja voiko käydä niin, että tänä päivänä aloitetttu jollakin hyvältä näyttävältä kielellä, ja ennen ohjelmiston valmistumista kieli todentaankin jo uusille laitteille vääräksi? Mitkä siis on tämän päivän järkivalinta?
Käsittääkseni pari vuotta sitten käytettiin Javaa ohjelmistojen kielenä, oli kyseessä kaupallinen tai open softa. Onko java nyt jo ihan vanhentunutta? Ja miten on, jos esim. vanhan Java-ohjelman haluaa tehdä esimerkiksi Chromebookille tai iOSlle toimivaksi, niin tarkoittaako se käytännössä koko työn aloittamista nollilta?
Mitä kieltä käyttävät isot mahtiyritykset? Esim. Mikin O365 taitaa toimia ainakin jollain tasolla kaikilla alustoilla. Ei varmaan ole tehty samaa duunia nollista alkaen jokaiselle alustalle, ei varmaan ole tarvinnut myöskään tehdä samaa duunia uudelleen, kun softaa on kehitetty aiempien officepakettien päälle. Word on kuitenkin ollut olemassa pidempään kuin on tiedetty mobiileista mitään. Pystyykö muuten kaupalliste/open softien kieltä millään tapaa selvittämään?
Sen sentään tiedän, että pikkuisia selainviritelmiä/appseja pystyy tekemään HTML5-pohjalta, mutta ei kai siitä ole kyse raskaammissa ohjelmissa?
Vai onko softamaailma vaan niin järkyttävää riskibisnestä, että väärällä kielellä aloitettu projekti on ihan nolla? Kai tästä on jotenkin kyse, kun joistakin ohjelmista ei tunnu millään ilmestyvän esim. mac-varsioita kysynnästä huolimatta.
Itse on joskus työn puolesta käytettyä Xamarinia, joka perustuu Monoon ja MonoTouchiin.
Tosin Chromebook tukea ei näytä olevan...
Ainakin Microsoft ja monet muut isot firmat tekevät C++:lla suurimman osan ohjelmasta ja siihen päälle pienen kerroksen alustariippuvaista koodia (android=Java, ios=Swift/ObjectiveC, windows=C#)
Yleinen tapa on tehdä UI alustan mukaan, ja kutsutaan keskitetystä rajapinnasta yhteisiä toiminnallisuuksia.
Työpöytäsovelluksissa osa (tai kaikki, mikäli sovellus ei käytä keskitettyä datavarastoa jne) business -logiikasta voidaan suorittaa myös paikallisesti (esim nuubiXin kuvaaman mallin mukaan, missä bl kirjastot on käännetty halutulle alustalle), mutta mobiili- ja verkkosovelluksissa käyttö on pääasiassa ylläolevan mallin mukaisesti.
Kiitos näistä. Lueskelin myös muualta netistä ja sain jo pientä käsitystä ohjelmistokehittämisestä. Nettisivutason ulkopuolinen Chormebookmaailma jäi edelleen mysteeriksi
Aihe on jo aika vanha, joten et voi enää vastata siihen.