Prilikom potrage nekog resenja za razvoj desktop aplikacija za razlicite platforme (Win / Linux / OS X), naleteo sam na jedan vrlo zanimljiv framework pod nazivom TideSDK.
http://www.tidesdk.org
Koncept kombinuje razlicite web tehnologije ali ovog puta na desktop racunarima i kao takav je vrlo zanimljiv i jednostavan za koriscenje i izradu razlicitih grafickih korisnickih interfejsa (GUI) koji su generalno problem (za developere) na PC platformama. Ovde je ceo taj koncep jednostavno prebacen na HTML/CSS jer je APP ustvari samo nezavisni browser engine ali koji ima mogucnost interakcije sa ostalim standardnim stvarima na racunaru (fajlovi, slike, seriski portovi itd).
Koncept se dalje nadograduje kompletnom podrskom za SQLite (lokalna baza podataka u okviru aplikacije) i MySQL client podrskom, razne standardne PHP biblioteke sve do PHP funkcija koje imaju HTML DOM pristup za dalju nadogradnju preko JavaSript (deo TideSDK framework API-a).
Evo jedan krajnje neobican primer, "hibridna" HTML PHP skripta koja radi SQL upit na neki spoljni MySQL server i stampa prostu poruku sa rezultatom upita u prozoru aplikacije.
Rezultat prevodjenja ovog code-a je kompletna Aplikacija koja moze da se pokrene na razlicitim OS-ovima i ne zahteva nikakve dodatne biblioteke ili web servise.
Dakle na ovaj nacin je moguce veoma lako napraviti multi-platform desktop aplikaciju koriscenjem "samo" HTML/CSS/JS/PHP tehnike.
Takodje je krajnje prosto (isto kao za pravo WEB okruzenje) koristiti razne JavaScript biblioteke poput JQuery, AngularJS, Bootstrap, NodeJS i ostale fine pogodnosti koje se vec duze vreme uspesno koriste na WEB-u.
Ovo je sjajno, upravo sam nasao dugoocekivano resenje za moj Si5351 PIC USB kontroler program (takodje i za moj AD9850 signal generator) i prve probe koje sam napravio su dale pozitivne rezultate tj uspeo sam bukvalno u 3 PHP linije (fopen, fwrite, fclose) da uspostavim serisku komunikaciju sa mojim modulom koristeci standardnu WEB programsku tehniku.
Na slican nacin je moguce napraviti program za razne vizuelizacije, kontrolu ili upravljanje i to ukaciti sa bilo kojim kontrolerom (PIC, STM32, Arduino itd) preko raspolozivih komunikacionih kanala.
http://www.tidesdk.org
Koncept kombinuje razlicite web tehnologije ali ovog puta na desktop racunarima i kao takav je vrlo zanimljiv i jednostavan za koriscenje i izradu razlicitih grafickih korisnickih interfejsa (GUI) koji su generalno problem (za developere) na PC platformama. Ovde je ceo taj koncep jednostavno prebacen na HTML/CSS jer je APP ustvari samo nezavisni browser engine ali koji ima mogucnost interakcije sa ostalim standardnim stvarima na racunaru (fajlovi, slike, seriski portovi itd).
Koncept se dalje nadograduje kompletnom podrskom za SQLite (lokalna baza podataka u okviru aplikacije) i MySQL client podrskom, razne standardne PHP biblioteke sve do PHP funkcija koje imaju HTML DOM pristup za dalju nadogradnju preko JavaSript (deo TideSDK framework API-a).
Evo jedan krajnje neobican primer, "hibridna" HTML PHP skripta koja radi SQL upit na neki spoljni MySQL server i stampa prostu poruku sa rezultatom upita u prozoru aplikacije.
PHP Code:
<html>
<body>
<script type="text/php">
function fetch_data() {
global $document, $window;
$document->getElementById("data")->innerHTML = "<span style=\"color:green\">Fetching...</span> ";
$fn = function() {
global $document, $window;
mysql_connect("ensembldb.ensembl.org", "anonymous", "") or $window->alert(mysql_error());
mysql_select_db("homo_sapiens_core_47_36i") or $window->alert(mysql_error());
$result = mysql_query("select * from assembly LIMIT 0,5");
$row = mysql_fetch_array($result);
$asm_seq_region_id = $row["asm_seq_region_id"];
$document->getElementById("data")->innerHTML = "asm_seq_region_id = $asm_seq_region_id";
};
$window->setTimeout($fn, 500);
}
</script>
<button onclick="fetch_data();">Fetch Data</button>
<div id="data">
</div>
</body>
</html>
Rezultat prevodjenja ovog code-a je kompletna Aplikacija koja moze da se pokrene na razlicitim OS-ovima i ne zahteva nikakve dodatne biblioteke ili web servise.
Dakle na ovaj nacin je moguce veoma lako napraviti multi-platform desktop aplikaciju koriscenjem "samo" HTML/CSS/JS/PHP tehnike.
Takodje je krajnje prosto (isto kao za pravo WEB okruzenje) koristiti razne JavaScript biblioteke poput JQuery, AngularJS, Bootstrap, NodeJS i ostale fine pogodnosti koje se vec duze vreme uspesno koriste na WEB-u.
Ovo je sjajno, upravo sam nasao dugoocekivano resenje za moj Si5351 PIC USB kontroler program (takodje i za moj AD9850 signal generator) i prve probe koje sam napravio su dale pozitivne rezultate tj uspeo sam bukvalno u 3 PHP linije (fopen, fwrite, fclose) da uspostavim serisku komunikaciju sa mojim modulom koristeci standardnu WEB programsku tehniku.
Na slican nacin je moguce napraviti program za razne vizuelizacije, kontrolu ili upravljanje i to ukaciti sa bilo kojim kontrolerom (PIC, STM32, Arduino itd) preko raspolozivih komunikacionih kanala.