30 votes

Pourquoi n'y a-t-il pas de créateur de GUI de type CSS

Ok, donc ce sera probablement fermé ou que ce soit, je n'ai pas de soins. Je dois dire cela parce qu'il vient de me frustre comme l'enfer.

Une fois, je suis venu à partir d'un code html/css/php arrière-plan dans les vastes profondeurs de développement d'applications. J'ai erré autour de la vallées de Java et a exploré les mystères de C#. J'ai eu le souffle coupé devant la beauté de Rubis, est tombé sur le têtu simplicité de Bash et de temps en temps est venu rendre visite à mes vieux amis de HTML, CSS et PHP.

C'était jusqu'à ce que j'ai eu la volonté de création d'une application de Bureau en Java que j'ai été choqué par la douleur et la souffrance que j'avais à parcourir afin de rendre l'application plus ou moins convivial en termes de look et se sentir.

J'ai été piégé dans un cauchemar de LayoutManagers, Accueil des paramètres et quelle que soit la faute des créatures menti au-delà des portes de java.swing et de ses compagnons.

À ce stade, j'ai senti une idée de reproduction en moi. Comme il a été dit par Cobb; Ce qui est le plus résistant des parasites? Les bactéries? Un virus? Un les vers intestinaux? Une idée. Résistants... très contagieuse. Une fois qu'une idée s'est emparée du cerveau, c'est presque impossible à éradiquer. Une idée qui est entièrement formé - bien compris - que les bâtons; à droite, quelque part. - Tu sais, qu'un peu d'idée.

Je me demandais, pourquoi ne pourrait-elle pas être aussi facile que de mon copain CSS fait. Layouting en tant que tel, en utilisant les marges, les bordures, les floatings, que ce soit.

Web moderne-les applications sont entièrement conçus dans le plus pur, simple, facile CSS. Suis-je fou pour vouloir la même chose pour mon ordinateur de bureau-applications? L'écart entre les deux se ferme de plus en plus comme j'écris ceci. Il y a des pages web là-bas qui sont beaucoup plus complexe que ce que la plupart des passe-temps les programmeurs vont écrire dans leur vie entière.

Je ne comprends juste pas pourquoi GUI de la création doit être un tel tapage. Probablement c'est juste parce que je viens d'un arrière-plan différent et je suis utilisé pour les feuilles de style CSS comme style, alors seulement je me sens de cette façon, mais encore;

N'a pas personne n'a jamais pensé à cela? Serait-il si difficile de créer un CSS-analyseur de style GUI? Avec exactement les mêmes méthodes que dans le développement web? Des Identifiants, des Classes de sélecteurs, etc. Quelle est la plus grosse difficulté dans la création de cette?

Quelqu'un at-même sentez la même manière que je fais?

Ou (ce qui serait tout à fait emberassing) est-il un tel outil, j'étais juste trop stupide pour le trouver?

13voto

Matěj Zábský Points 9179

WPF (Windows Presentation Foundation) de Microsoft NET est une solution de création d'interface graphique similaire à HTML + CSS.

IMO, il est beaucoup plus polyvalent que HTML, mais toujours facile à utiliser (et à créer du code GUI lisible).

La définition de la mise en page est aussi simple que cela:

 <DockPanel>
    <Label Content="Dock Panel Layout Demo" 
    FontSize="15" FontWeight="Bold" Background="LightBlue"
    Foreground="Blue" DockPanel.Dock="Top"/>

    <Label Content="Footer" FontSize="15" FontWeight="Bold" 
           Background="LightGray"
           DockPanel.Dock="Bottom" />

    <Label Content="Left Pane" FontSize="15" FontWeight="Bold"
           Width="125" Background="Firebrick"
           DockPanel.Dock="Left"/>

   <Label Content="Content Pane" FontSize="15" FontWeight="Bold"
           Width="255"
           Background="Beige"/>

    <Label Content="Right Pane" FontSize="15" FontWeight="Bold"
           Width="125" Background="Khaki"
           DockPanel.Dock="Right"/>
</DockPanel>
 

Et les styles:

 <Window.Resources>
    <Style x:Key="myStyle" TargetType="Button">
       <Setter Property="Background" Value="Orange" />
       <Setter Property="FontStyle" Value="Italic" />
       <Setter Property="Padding" Value="8,4" />
       <Setter Property="Margin" Value="4" />
    </Style>
</Window.Resources>
 

12voto

Kyle Sevenoaks Points 29929

Le langage XML de Mozilla, XUL, utilise CSS comme outil de mise en page de l'interface graphique. Ils ont un article sur " Skinnable XUL et CSS ". :)

8voto

Venemo Points 7213

Dans les applications Qt, vous pouvez utiliser une syntaxe de type CSS, appelée QSS.
La prochaine version aura également une "interface utilisateur déclarative", appelée QML.

WPF et Silverlight utilisent également un langage déclaratif basé sur XML pour leur interface utilisateur, appelé XAML.

7voto

Bryan Oakley Points 63365

C'est une question de perspective. Je fais du développement d'applications de bureau depuis quelques décennies. Je pense que CSS est absolument horrible. Il est ridiculement difficile de créer une mise en page décente, et la véritable interactivité est une douleur royale. À mon avis.

Maintenant, j'utilise principalement tcl / tk et python / wxpython, ce qui rend le développement de l'interface graphique assez facile. Je peux voir comment, si votre premier goût de la programmation GUI de bureau est Java, vous avez tiré la conclusion que vous avez faite. Je ne souhaiterais pas de programmation java GUI sur personne.

7voto

Jonathan Points 215

"CSS pur, simple et facile"

Je doute que vous ayez créé des sites Web / applications multi-navigateurs, accessibles et indépendants des navigateurs.

La vérité est beaucoup plus douloureuse que vous ne le pensez.

Je serais éternellement reconnaissant de ne plus jamais utiliser un autre "hack de modèle de boîte".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X