GNU/Linux >> Znalost Linux >  >> Linux

Ponechat rozhraní programového rozhraní a Cli oddělené?

V Linuxu má mnoho programů verzi CLI a rozhraní GUI. Někde jsem četl, že se to řídí linuxovou filozofií a je to dobrá praxe. Z pohledu vývojářů samozřejmě platí, že kód GUI bude oddělen od skutečného programu.

Vzhledem k programu, který lze vesele používat z příkazového řádku, bych chtěl vytvořit GUI pro verzi příkazového řádku. Jaké zde mám možnosti?

Napadají mě pouze 2, které by vývojář GUI použil.

  • volání programu s nakonfigurovanými parametry takto:

    system(“nějakýprogram –parametr1 -p2 -p3”)

  • mít verzi CLI možné spustit v režimu serveru se sokety (unix, inet, …) a používat tyto sokety ke komunikaci se „serverem“

Nejčistší řešení by bylo podle mého názoru druhé, ale to není vždy možné bez změny verze CLI.

Skutečná otázka je, jaký je správný způsob, jak mít verzi cli i verzi GUI sestavenou samostatně?

Přijatá odpověď:

Jiný přístup je napsat svou funkcionalitu jako knihovnu. Pak máte GUI, které používá knihovnu; a CLI, které také používá knihovnu. V závislosti na složitosti vašeho úkolu to může být nejlepší řešení, protože oba programy mohou fungovat nezávisle bez potřeby jakékoli meziprocesní komunikace.


Linux
  1. Jak zjistit a zjistit, že je program v mrtvém bodě?

  2. Pozice nezávislé spustitelné soubory a Android

  3. Co je/jsou standardní programy CLI pro správu uživatelů a skupin?

  1. Jak programovat s Bash:Syntaxe a nástroje

  2. Jak zkontrolovat verzi OS a Linuxu

  3. Nainstalujte SoftHSM a přistupujte k němu prostřednictvím programu Java

  1. Sledování programů?

  2. Spustit program Gui při spuštění?

  3. Upravit a překompilovat individuální program?