Forudfastsætte Fx

3

Indsendt af: 14-02-2009 | Af: tshanky | In: RIA - Flex / AIR / PDF / Ajax

Adobes Flex team synes tilbøjelige til at bevæge sig væk fra rene design.

Flex ramme nuværende stabile version er 3.x og Flex teamet på Adobe arbejder aktivt på at få version 4.x klar i år. På dette tidspunkt er kernen SDK af Flex 4, kodenavnet Gumbo, udvikler sig gennem en open source-processen. Fra kigger i sin oprindelige version, ser det lovende, da der er alvorlige forsøg på at skabe en ren adskillelse af adfærd og præsentationen i komponenter, bortset fra de tonsvis af fiks ekstraudstyr hele rammer. (Jeg lover at skrive om nogle af de kommende funktioner snart)

Men en design afgørelse midt i alt dette godhed synes lidt mærkeligt og alarmerende. Flex team foreslår at præfikset Gumbo komponent navne med bogstaverne "Fx". Lad os prøve og forstå, hvad dette betyder.

I Flex 3.x og 2.x du har en knap komponent, som du får adgang til inden for en flex program ved hjælp <mx:Button>. Her navnet på den komponent er Button og mx er navneområdet, inden for hvilken denne komponent er bosat. Nu i 4.x du stadig have Button-komponent, men det afviger majorly fra den komponent af samme navn i 3.x eller 2.x version af rammen. Det er muligt udviklere kan lide at bruge begge versioner samtidigt og det er når der er behov for de to enheder, dvs knapper, (med samme navn) kan identificeres tydeligt.

Kort og godt, hvordan kan du sikre dig de to udgaver af Button arbejde sammen uden at skabe forvirring i programmet. Svaret på dette spørgsmål er enkelt og tid testet: Læg dem i forskellige logiske buckets.

Denne løsning at sætte ting med samme navne i logisk forskellige partitioner synes at fungere godt i mange situationer. Dette er, hvordan to klasser af samme navn er differentieret - de er sat under forskellige pakke strukturer. For eksempel abcFoo og xyzFoo kan eksistere i det omfang de er nævnt med deres fuldt kvalificeret navne. Dette er, hvordan XML-elementer med samme navn men fra forskellige skemaer er forsonet. Dette er, hvordan variabler med samme navn, men inden for forskellige anvendelsesområder er løst.

Men denne enkle løsning synes at unddrage sig Flex holdets overvejelser. De mener, logisk opdeling (som oversætter til navnerum i tilfælde af Flex komponenter acessed af deres XML-tags) kan være forvirrende for nybegyndere.

Common Sense Reasoning

Common Sense Reasoning

Så de foreslår i stedet, at vi præfiks navnene på alle komponenter whoes navne kollidere med eksisterende med bogstaverne "Fx". Med andre ord vores <mx:Button> i Flex 3.x eller 2.x, som i øvrigt er kærligt hedder nu "Halo", bliver <FxButton> i Flex 4, som også er benævnt "Gumbo".

Hvis du bruger navnerum stedet derefter denne samme knap i Gumbo vil blive <fx:Button>.

Hvis vi følger Adobe's forslag kan vi jord op med sådan noget -

  • Halo - mx: Knap
  • Gumbo - FxButton
  • Mumbo (eller hvad de vælger at kærligt kalder den næste version) - Fx2Button eller FxFxButton eller MumboFxButton
  • Jumbo (muligvis følgende evolutionære version) - Fx3Button eller FxFxFxButton eller JumboFxButton

Ville du ikke bare kalde en knap en Knap og har navnerum beslutte vejr sin fra Halo, Gumbo, Mumbo eller Jumbo klan?

Hvis du gerne vil hjælpe Adobe gøre en fornuftig beslutning til fordel for navnerum (dvs. bruger fx: Knap stedet for FxButton for nu) så kan du gå videre og stemme for denne fejl på Flex JIRA .

Kommentarer

Jeg er enig med din følelse helt, hvis begrundelsen for at skifte til Fx var rent til navn afstand, selvom jeg har en fornemmelse af det ville være mere politisk end som så. Den mx Pakken blev indført ved macromedia når Flash MX blev afskibet - denne ændring af forstavelsen føles mere som Adobe forsøger at slippe af med enhver resterende Macromedia referencer.

Dette spørgsmål blev besluttet i går og Fx præfiks er død.

Matt Chotin indsendt til Adobe fora, Fx præfiks er død. Killinger er gemt.
http://www.adobeforums.com/webx/.59b7e849

Fx præfiks er ikke mere at kontrollere dette:
http://www.adobeforums.com/webx/.59b7e849

Benz

Skriv en kommentar

FireStats ikon Powered by FireStats