Photo de ma bande : Oh ruptureSi grand, en fait, que je suis écrit environ dans le papier. La bande a joué ce soir une exposition au centre d'événements, un collecteur de fonds pour le SIDA.

  1. discount fleshlight sleeves
  2. fleshlight build your own
  3. discount fleshlight sleeve
  4. fleshlight coupon codes
  5. fleshlight girls coupon codes
  6. discount fleshlight
  7. fleshlight discount
  8. fleshlight coupon codes
  9. fleshlight fleshjack
  10. icejack gay fleshlight
  11. stamina training unit fleshlight
  12. buy fleshlight lube
Nous avons eu l'amusement et étions à la bonne compagnie avec les autres grandes bandes là. Je devine que je devrais aller me prépare à l'entrevue de Rolling Stone qui est liée pour venir le long maintenant n'importe quand maintenant

C'a été une semaine assez bonne. J'ai trouvé que dehors deux des papiers que j'ai écrits ont été choisis pour des conférences cet été (W4A à Madrid et PETRAE en Grèce). Après quelques bières, j'ai trébuché à la maison et ai décidé de faire une recherche de vanité sur Google. Après que tout il ait été au moins quelques mois et quelque chose qui excite a pu s'être produite depuis lors. À ma consternation, les résultats de recherche de « Darren Minifie » sont pollués avec la merde. Si les gens voulaient savoir si j'étais sur le Facebook ou le MySpace, une recherche sur ces emplacements respectifs aurait été proportionnée.

Au lieu de cela, la première page des résultats est remplie d'ordures à partir de Facebook, Twitter, de MySpace et d'autres grands, sans signification emplacements (forum d'Ubuntu, etc.). Google devrait filtrer ces résultats d'ordure et de produit qui sont intéressants et uniques. J'ai formulé des commentaires sourds-muets sur un groupe de sites Web qui seraient plus intéressants que quel Google tourne vers le haut.

Oh couverture instantanée d'albumComme j'ai mentionné, je joue la basse dans une bande appelée oh la rupture ! En avril 2008 nous avons enregistré un album intégral. En conclusion, tous les empaquetage et substance de distribution a été pris en compte et notre album se vend chez CDBaby. Les voies seront également disponibles sur des iTunes sous peu.

Récemment j'avais creusé dans les dispositifs d'accessibilité établis dans le léopard (Mac OS 10.5), à savoir reconnaissance de la parole et synthèse texte-voix. En arrière en jour j'ai employé un Mac dans l'école primaire. À ce moment-là la synthèse texte-voix n'était rien davantage qu'un truc et une reconnaissance de la parole étaient inexistants. J'ai été très impressionné pour voir à quelle distance ces technologies être venu. Je crois qu'elles sont à un point où elles peuvent être considérées les outils légitimes pour l'accessibilité et la productivité. La meilleure partie est que ces dispositifs sont inclus dans la dehors-de-le-boîte d'OS X.

La recette que je présenterai en cet article te permet de publier la commande de voix « a lu ceci à moi » à votre Mac. Le texte dans le document courant sera choisi et lire de nouveau à vous utilisant le synthétiseur texte-voix.

1. Permettez la synthèse texte-voix :

Préférences de système ouvert et discours choisi. Choisissez l'étiquette texte-voix et permettez l'option parlent le texte choisi quand la clef est pressée. Placez la clef correspondante au contrôle + au commandement + au `/'. Cette combinaison principale est importante plus tard.

2. Permettez la reconnaissance de la parole :

Dans toujours le carreau de préférences de la parole, assurez-vous que des articles Speakable est permis.

3. Créez l'Applescript :

Après, dirigez aux applications/AppleScript et lancez le scripteur. Insérez les deux lignes suivantes :

dites l'application « événements de système » à la frappe « a » employant {la commande vers le bas}
des « événements de système » dites application au » de frappe/« employant {la commande vers le bas, commandent vers le bas}

Sauf le manuscrit comme « lisez ceci à moi » dans votre annuaire de la bibliothèque/parole/articles Speakable du répertoire local ».

4. Examinez-le dehors :

Ouvrez un document (essayez un document pur des textes d'abord) ce vous veulent avoir lu. Maintenez la touche d'échappement ESCAPE et publiez le `de commande de voix lisent ceci à me'. Le texte devrait être choisi et lu à haute voix.

Le bonbon, l'AVAudioPlayer fonctionne grand ! Beaucoup beaucoup plus simple qu'utilisant AudioQueueServices. Vous créez fondamentalement un objet d'AVAudioPlayer, l'initialisant avec un NSURL indiquant un dossier audio :

	*newPlayer d'AVAudioPlayer = [[initWithContentsOfURL d'alloc d'AVAudioPlayer] : erreur de fileURL : zéro] ;

Prochain appel audioPlayer.prepareToPlay pour installer les amortisseurs :

	si (! ([self.audioPlayer prepareToPlay])){
		NSLog (@ " audioPlayer : FAUX retourné prepareToPlay ") ;
	}

Enfin quand vous voulez commencer le playback, appel audioPlayer.play ;

	[jeu de self.audioPlayer] ;

Je travaille sur un projet de classe par lequel je doive inclure le playback audio sur une application d'iPhone. J'ai mon interface utilisateurs fonctionner bien et la prochaine étape est d'inclure la fonctionnalité audio. Elle s'avère (en date de SDK v2.1), cette acoustique comprimée de jeu est étonnant difficile.

Assez incroyablement, j'ai juste reçu l'avis du logiciel v2.2 d'iPhone. Dans elle est-elle une nouvelle classe appelée AudioPlayer, des conjectures sur ce qu'elle fait ? Elle soustrait loin le beaucoup de le cruft d'AudioQueueServices (avec ce que j'étais sur le point de lutter). Spécifiquement, des avis d'interruption de l'OS, et la manipulation des données audio de dossier est automatiquement manipulés. À condition que vous vouliez seulement la fonctionnalité de base de playback d'un dossier audio, c'est un api beaucoup plus simple à employer (au premier regard de toute façon). Je suis excité pour commencer à jouer avec lui. J'écris à ceci les nouveaux téléchargements de SDK.

J'ai récemment commencé à mettre en application l'arrière saison pour un service de passage public.  Le système rassemble des données de passage public et sert sous une forme accessible.  On l'espère que les clients sur les dispositifs mobiles l'emploieront pour fournir des données accessibles de passage aux personnes handicapées.

Je prévoyais sur employer Google AppEngine pour stocker et servir les données. Cette option en appelait parce qu'elle soutient le python, a un datastore distribué, et est soutenue par l'infrastructure du serveur de Google. Mon seulement souci était que le datastore a employé un modèle apparenté d'objet.  Dans une application Web, on crée des objets qui DB de sous-classe. Modèle.  En appelant object.put (), cet exemple de l'objet est stocké dans le datastore.  Ceci a semblé comme une manière vraiment utile et commode de stocker des données pour une application.

Malheureusement le briseur d'affaire était que je ne pourrais pas questionner à travers des objets.  Considérez cette situation :  Je dois stocker des données de établissement du programme pour un système d'autobus.  J'ai les classes suivantes :

itinéraire de classe (DB. Modèle) :
	systemRef = db.ReferenceProperty (TransitSystem)
	nom = db.StringProperty (required=True)
	nombre = db.IntegerProperty (required=True)
 
arrêt de classe (DB. Modèle) :
	nom = db.StringProperty (required=True)
	routeRef = db.ReferenceProperty (itinéraire)
	routeLetter = db.StringProperty (requis = faux)
	endroit = db.GeoPtProperty (required=False)
	direction = db.StringProperty (required=True)
 
programme de classe (DB. Modèle) :
	stopRef = db.ReferenceProperty (arrêt)
	jour = db.StringProperty (required=True)
	périodes = db.ListProperty (streptocoque)

J'ai des objets de programme (énumère fondamentalement des périodes) qui ont une référence à un objet d'arrêt. l'objet d'arrêt a alternativement une référence à un objet d'itinéraire. Pour obtenir les programmes pour l'itinéraire d'autobus #14, j'espérais pouvoir faire ceci :

résultats = Schedule.all () .filter (« stopRef.routeRef.number = », « 14 »)
pour r dans les résultats :
    # bourrez de l'ensemble de résultat

Pendant qu'il s'avère, vous ne pouvez pas questionner à travers des références d'objet. J'ai constaté que je devrais questionner pour tous les objets de programme, puis élimine les résultats que je n'ai pas voulus. Je sais qu'il y a de meilleures manières d'employer le datastore. Je pourrais avoir stocké les propriétés qui évitent cet croix-objet questionnant, mais faire ainsi exige du code d'application de s'assurer que des anomalies de mise à jour sont manipulées en employant le datastore. Par exemple, j'ai vu un forum signaler la suggestion pour faire ceci :

programme de classe (DB. Modèle) :
	stopRef = db.ReferenceProperty (arrêt)
	jour = db.StringProperty (required=True)
        stopname = db.StringProperty (required=True)
        routename = db.StringProperty (required=True)
	périodes = db.ListProperty (streptocoque)

La motivation est que j'emploierais le stopname et le routename souvent. Je suis plus au courant du modèle apparenté et réduisant des dépendances fonctionnelles ainsi ceci a semblé compliqué. Je vais essayer l'approche apparentée de mySQL et voir si je peux augmenter l'exécution.

En tant qu'élément de ma recherche graduée, nous avons rassemblé une équipe de réalisateurs pour concevoir et mettre en application des applications sur les dispositifs mobiles pour aider des personnes handicapées (si vous êtes dans le développement de logiciel mobile et ceci te semble intéressant, obtiennent certainement une prise de moi).  Une matière qui se produit à plusieurs reprises est le choix de la plate-forme à focaliser dessus.  Sans modification, il y a des demi-douzaines ou ainsi des plates-formes qui ont (ou peut avoir) assez de part de marché pour justifier de telles applications.  Dans une discussion particulière, nous chacun avons rangé les plates-formes mobiles.  Il n'y avait aucun critère pour la comparaison, juste notre préférence personnelle.  Ma liste a fini vers le haut comme :

  1. fleshlight user
  2. fleshlight gay review
  3. fleshjack
  4. masturbation sleeve home made
  5. fleshlights
  6. fleshlight pussy cum
  7. fleshlight anal sex demo couch
  8. build your own flesh light
  9. fleshlight and modifications
  10. fleshlight best sleeve
  11. fleshlight how
  12. fleshlight case
  13. fleshlight gay
  14. flesh light
  15. athlone fleshlight
  16. fleshlight advert
  17. fleshlight for her
  18. sex toys shopping online fleshlight
  19. fleshlight stu reviews
  20. fleshlight wonder wave turbo tube
  21. review pink non descript fleshlight
  22. fleshlight clips masturbate
  23. fleshlight movies
  24. flesh light commercial
  25. buy fleshlight sex toy pakistan
  26. which fleshlight sleeve is good
  27. raven riley fleshlight review
  28. fleshlight ice climax
  29. male sex with fleshlight
  30. fleshlight wonder wave review
  31. ice jack gay
  32. ice fleshlight case
  33. flesh light fuck
  34. fleshlight videos
  35. wiki fleshlight
  36. fleshlight ass review
  37. fleshlight sites
  38. fleshlights videos
  39. fleshlight pussy masterbator
  40. male masturbation aids reviews
  41. flesh light preparation
  42. are fleshlights like pussy
  43. www fleshlite
  44. fleshlight and modification
  45. fleshlight vid girl
  46. the fleshlight reviews
  47. fleshlight turbo
  48. fleshlight works
  49. fleshlight video gay
  50. fleshlight tips
  51. diy flesh light
  52. top masturbation sleeves
  53. flesh light user videos
  54. build your own fleshlight
  55. rewiew fleshlight
  56. flesh light sale
  57. fleshlight demonstration
  58. improve the suction of a fleshlight
  59. fleshlight on boyfriend
  60. black fleshlight case
  61. fleshlight suppliers uk
  62. usa up all night flesh eating mothers
  63. stamna training unit from fleshlight
  64. clips of men using fleshlight
  65. using the flesh light
  66. lia 19 videos
  67. home jack off fleshlight
  68. stamina training unit vs wonder wave
  69. fleshlight male sex toy and videos
  70. fleshlight review original
  71. fleshlight sample video
  72. gay flesh lights
  73. fleshlight using chips tube
  74. fleshlight sexy
  75. fleshlight stamina training unit
  76. clear fleshlight sex toys
  77. guy and flesh light
  78. using the fleshjack
  79. 2 girl 1 fleshlight
  80. fucking with a fleshlight
  81. fleshlight cleaning
  82. raven riley with fleshlight
  83. interactive flesh light
  84. fleshlight masterbation
  85. homemade fleshlite
  86. ultra tight vs wonderwave
  87. fleshlight uk
  88. fleshlight modifications
  89. fleshlight in action
  90. videos of guys using fleshlights
  91. where to buy the fleshlight in vancouver bc canada
  92. fleshlight videos lia
  93. flesh light vid
  94. original lady fleshlight male masturbation
  95. power flesh light
  96. fleshlight in berlin
  97. raven riley flesh light
  98. girls using fleshlights
  99. fleshlight modification
  100. mr limpy from fleshlight
  101. latino fleshlight
  102. fleshlight forums
  103. fleshlight turbo tube review
  104. the fleshlight
  105. how to use a fleshlight
  106. used fleshlight
  107. man using fleshlight
  108. how to make a homemade fleshlight
  109. the tube masturbation sleeve
  110. how to make a fleshlite
  111. iPhone
  112. Androïde
  113. Symbian
  114. Blackberry
  115. Windows Mobile
  116. Linux
  117. Grenat

Mes critères ont été principalement basés sur le fait qu'I possèdent un iPhone, mais également sur l'expérience préliminaire que j'ai avec le divers SDKs. L'iPhone et le sembler androïde de SKDs stupéfiant, Symbian a le potentiel, et Blackberry et Windows Mobile sont toujours les compétiteurs appropriés. La liste d'un collègue était :

  1. Blackberry
  2. iPhone
  3. Symbian
  4. Windows Mobile
  5. Androïde
  6. Grenat
  7. Linux

Sa liste a été basée plus sur la part de marché.

Le traiteur de ceci est que nous tous avons nos propres idées au sujet derrière de ce que des plates-formes sont plus adaptées aux buts de projet.  De plus, il est long pour évaluer chaque SDK, déterminer quels dispositifs sont disponibles et ce qui manquent, évaluez le matériel soutenant chaque plate-forme, et prévoyez la tendance du marché que chaque plate-forme placera. Cette analyse devrait nous fournir un ensemble de contraintes auxquelles le logiciel doit se conformer.    Basé sur notre travail préliminaire, les facteurs qui doivent être adressés sont les suivants :

Langage de programmation

Une conséquence malheureuse de la large variété de plates-formes est la variété de langues de accompagnement utilisées dans le SDKs.  le SDK des iPhone est mis en application dans l'Objet-c et le C++, alors que le SDKs pour Blackberry et l'androïde sont Java basé.  Depuis Java, C++ et Objectifs-c sont tous impératifs, les langages de programmation orientée objectivement, un penseraient que l'arrivée à la même solution avec le quelconque d'entre ce devrait être insignifiante.  Sur notre équipe nous devons prendre une position plus pratique.  Nos ressources de programmeur sont rares et avoir versé bon d'experts dans chaque domaine de langage de programmation n'est pas réaliste en ce moment.  Par la suite, il serait grand d'avoir un chef pour chaque langue qui pourrait prendre un document abstrait de conception et produire une exécution concrète.

Une solution que je peux voir être utile ici est à d'abord conçoivent un api abstrait pour chaque application.  Ceci servirait de contrat au logiciel.  Un programmeur saurait que quelle fonctionnalité a été exigée et des codebases pourraient être légèrement organisés. Un problème évident avec ceci est qu'un codebase existe pour chaque plate-forme.  Ceci pourrait produire des problèmes majeurs quand il vient heure de mettre à jour ou changer le logiciel de quelque façon.    Un autre problème est qu'il n'y a aucune garantie que l'application sera de la même qualité parmi les diverses langues.  La fonction X a mis en application dans Java peut courir sensiblement meilleur que la fonction X dans C++, quoiqu'elles réalisent le même résultat.  Plus de recherche est nécessaire pour déterminer la meilleure approche pour prendre.  Un bon exemple peut être l'industrie de jeu vidéo. Il est commun pour voir un jeu disponible sur plusieurs différentes plates-formes.  Il serait intéressant de voir comment ces compagnies de développement réalisent cette portabilité.  Je ne suis pas même sûr si différents programmes de console sont écrits en différents langages de programmation, ou si tout est fait dans le C.

Dispositifs et api de plate-forme

Puisque chaque plate-forme aura son propres api et dispositif réglés, il sera important de maintenir le codebase bien organisé et d'exempt de n'importe quel code de personne à charge de plate-forme.  Il semblera probablement raisonnable d'avoir des classes d'adapteur à agir en tant qu'intermédiaires de l'application à la plate-forme api.  Par exemple, une de nos idées de projet comportera la navigation de GPS sur le dispositif.  Dans ce cas-ci, l'application devrait exiger à un adapteur pour obtenir des données de navigation de la plate-forme.  Dans le codebase il y aurait un iPhoneNavAdaptor, un AndroidNavAdaptor, etc. pour manipuler les détails de chaque plate-forme api.

Matériel

Étroitement attaché au point ci-dessus, des contraintes de matériel doivent être considérées dans le processus de conception.  L'iPhone est simple parce que son SDK soutient une d'une seule pièce du matériel (correct, il y a également le contact d'iPod).  Le SDK androïde, cependant, peut soutenir une large variété de dispositifs câblés.  Ce peut être le cas que quelques dispositifs ne soutiennent pas la plate-forme entièrement, ou a des approches radicalement différentes à une exécution (par exemple un écran tactile contre un clavier).

Stockage de données

En conclusion, beaucoup d'applications exigeront d'un point d'émission de données de fonctionner avec.  Nous travaillons à une application qui présente des programmes de passage d'une mode plus accessible.  L'information de programme doit être stockée dans une base de données, mais quel type à employer peut varier parmi les plates-formes.  Encore, l'utilisation des classes d'adapteur semble raisonnable.  Une autre approche que nous jouons avec est de stocker la majorité de données sur le Web quelque part, et permet d'accéder à elle par l'intermédiaire des URL.  L'application mobile ferait une demande à http://busses.com?route=14&day=saturday d'obtenir l'information de programme pour l'itinéraire 14 samedi.  Un serveur sur le Web renverrait un certain XML pour application au processus.  Cette solution semble appropriée.  Il y a la question d'avoir accès constant à l'Internet pour l'extraction de données.  L'évolutivité peut également devenir un problème.

Comme peut être vu, nous avons quelques décisions à faire pour réaliser autant appui de multi-plate-forme comme possible.  Si tout va bien plus de recherche indiquera les solutions que d'autres ont trouvées dans leur propre travail.

Tout en recherchant un cours d'instruction sur la façon dont augmenter la taille de police sur mon iPhone, j'ai trouvé ce document d'Apple. C'est un contour de l'accessibilité « comporte » sur l'iPhone 3G. En tant qu'utilisateur avec une incapacité de vision, je peux seulement parler pour une fraction de la communauté d'accessibilité, mais je trouve Apple atteindre vraiment pour quelques uns de ces points pour remplir leur page Web. Ne m'obtenez pas le mal, plusieurs de ces dispositifs sont essentiels, et j'applaudis Apple pour prendre la première mesure en faisant aux dispositifs mobiles accessible à tout le monde. Ce dit, je veux plus. Je veux voir le plus boiteux de ces dispositifs remplacés par de véritables bases d'accessibilité comme un lecteur d'écran ou une personnalisation universelle de police. Pour votre convenance, permettez-moi de paraphraser le dispositif réglé et d'ajouter mes 2 cents :

  1. Bourdonnement
  2. En pinçant l'écran, ou le double tapant un élément de Web, l'utilisateur peut bourdonner dedans sur une partie du document. C'est un excellent dispositif, et un j'emploie toute l'heure. L'ajustement ce ceci est au dessus de leur liste.

  3. Appui de téléscripteur
  4. Pas trop utile pour moi, mais certainement frais pour l'audition - altérée.

  5. Enregistrement de texte prédictif
  6. J'appellerai cet un demi- d'un dispositif. Je ne pense pas que ce dispositif a été ajouté pour des raisons d'accessibilité, mais je l'ai trouvé utile sur tous mes téléphones portables.

  7. Taille de police géante pour des messages de courrier
  8. N'importe quelle augmentation de taille de police est grande. Je souhaite seulement qu'elle pourrait devenir plus grande. De plus, il est décevant que la taille de police doive être placée sur un $$etAPP par base de $$etAPP, et n'est pas construite globalement de façon ou d'autre dans SDK.

  9. Grand pavé numérique pour la composition
  10. Bien que les grandes clefs soient « clef » (calembour terrible essayé), la nature même de l'interface de contact peut rendre la composition difficile pour quelques utilisateurs. À mon vieux téléphone, je pourrais sentir une petite bosse sur le numéro 5 qui me laisse placer ma main sur le clavier numérique sans regard. Ce n'est pas aussi facile sur un écran tactile parfaitement plat d'iPhone.

  11. Composition Network-based de voix
  12. Évidemment je ne sais pas ce qu'est ce, ni si mon fournisseur l'offre même. Je regarderai dans ceci mais en attendant, si quiconque me connaît et peut éclairer, je l'apprécierais.

  13. Les mains libèrent le téléphone de haut-parleur
  14. Cette norme n'est-elle pas sur chaque dispositif tenu dans la main ? Merci de préciser un dispositif qui est attendu pour être là.

  15. Alertes audibles, évidentes, et vibrantes
  16. Encore c'est standard à n'importe quel téléphone portable décent. Aucune vente de fantaisie requise.

  17. Ringtones assignable
  18. Bien plus de remplisseur de page.

  19. Courrier vocal visuel
  20. L'ok, ceci est réellement un dispositif que j'aime. Je classifierais ceci comme dispositif le plus salutaire à l'audition - altérée, mais je sais qu'elle me sauve un groupe de moment où vérifiant mon courrier vocal. Je permettrai celui-ci sans n'importe quelle critique.

  21. Causer-comme SMS
  22. Je suis en désaccord avec ce rapport plus. Il est incroyablement difficile de voir l'application de causerie. la police est minuscule, et les pertes de disposition par tonne des immobiliers d'écran. Je préférerais un tiers $$etAPP dans ce cas-ci.

  23. Synchro automatique par l'intermédiaire des iTunes
  24. C'est plus d'une convenance que toute autre chose.

  25. Le guide de l'utilisateur alternatif de format
  26. Ainsi vous avez un dossier de latex que vous pouvez exporter car le HTML ou le pdf et c'est un dispositif d'accessibilité ? Vous atteignez Apple.

Peut-être certains des commentaires ci-dessus sont un peu dur. Je devrais dire que de tous les dispositifs mobiles que j'ai possédés, l'iPhone est des ligues au-dessus de eux tous en ce qui concerne la rentabilité et l'accessibilité. Les deux secteurs où je pense que l'iPhone manque est personnalisation des polices, des couleurs etc., et d'un lecteur d'écran. De plus, je pense que c'est ces deux secteurs où l'androïde de Google va briller. Un concept de noyau du cadre androïde est que n'importe quel composant peut être remplacé. Par exemple, si l'androïde vient avec une application de causerie avec de petites polices, un réalisateur peut la remplacer entièrement par un ayant de grandes polices. Également comme important, l'iPhone ne permet pas l'exécution des apps multiples immédiatement. En soi, l'inscription d'un lecteur d'écran pour l'iPhone fait à peu un sens car un utilisateur ne pourrait pas l'employer et un $$etAPP différent en même temps. Peut-être les bonnes gens à Apple pourraient construire ceci dans l'OS de façon ou d'autre. Après tout, les iTunes $$etAPP peut jouer la musique tout en employant d'autres apps.

J'entends toujours que la concurrence parmi la technologie est une bonne chose. J'espère que ceci juge vrai parmi les diverses plates-formes mobiles naissantes. Si on tire en avant en termes d'accessibilité, d'autres devront suivre le mouvement pour rester concurrentiels. En fin de compte, c'est l'utilisateur qui gagne.

Au travail nous utilisons le cocon d'Apache comme cadre pour notre application Web de xml.  Il fait assez frais.  Vous commencez essentiellement par votre contenu, marqué vers le haut dans XML, et transformateurs de cocon d'utilisation, aggregators, actions et générateurs pour produire le contenu de Web.

Le cocon, cependant, prend XML à l'extrémité, au point où il est incommode et improductif d'employer.  Je devrais dire d'avance que je n'ai pas accordé probablement au cadre l'attention qu'il mérite.  Comme réalisateur à temps partiel pour cette organisation, mon temps est limité et je ne peux pas la gaspiller sur la recherche copieuse.

Jusqu'ici je suis parvenu à passer avec le cocon. Pour des tâches où nous devons produire du contenu pour des utilisateurs, le cocon réalise un bon travail.  Aujourd'hui j'ai commencé à travailler sur un problème où je dois signaler quelques variables de demande de nouveau au serveur et employer un programme sur le serveur pour les écrire à un fichier de consignation.  Dans le meilleur des cas, l'amour d'I'de pour employer le python ou le PHP franc ceci, mais c'est inadmissible pour maintenant, puisque le cocon ne soutient pas cela directement.  L'apprach recommandé est d'employer Java sur le serveur par l'intermédiaire d'un XSP (page extensible de serveur).  Puisque le cocon est couru dans un Java Servlet (pensez le Tomcat ou la jetée), il peut se servir de Java assez facilement.  Le problème est que ces dossiers de XSP sont XML avec la logique de programme dans les étiquettes. Peut-être c'est une préférence personnelle, mais je trouve ceci incroyablement méchant pour travailler avec. Vous pouvez même avoir plus de XML niché avec le Java, qui est dans le XML original, tous avec différents namespces.  Regardez cet exemple qui emploie Java pour montrer le temps courant (ce code est emprunté au manuel du réalisateur de cocon, 2002) :

< ? version= » 1.0 » de xml ? > 
<xsl : stylesheet 
    xmlns : xsl= » http://www.w3.org/1999/XSL/Transform » 
    xmlns : xsp= » http://apache.org/xsp » 
    xmlns : abc= » http://samspublishing.com/abc/1.0 » 
    version= » 1.0 » > 
        <xsl : xsp de match= de calibre » : page » > 
            <xsp : page> 
                <xsl : select= » @* »/> d'appliquer-calibres 
                <xsp : structure> 
                    <xsp : include>java.util. Date</xsp : include> 
                </xsp : structure> 
 
                <xsp : logic> 
                    Date maintenant = nouvelle date () ; 
                </xsp : logic> 
                <xsl : apply-templates/> 
            </xsp : page> 
        </xsl : template> 
 
        <xsl : ABC de match= de calibre » : date-heure » > 
            Le temps courant est <xsp : expr>now</xsp : expr> 
        </xsl : template> 
 
        <xsl : @* de match= de calibre »|noeud () » > 
            <xsl : copy> 
                <xsl : @* de select= d'appliquer-calibres »|noeud () »/> 
            </xsl : copy> 
        </xsl : template> 
        <xsl : match= » texte de calibre () » >                  
             <xsl : select= de value-of ». » /> 
        </xsl : template> 
</xsl : stylesheet>

Parlez de compliqué.  Hormis le fait qu'il est illisible, il y a d'autres inconvénients aussi bien. Puisque c'est essentiellement un dossier de XML, vous perdez la mise en évidence de syntaxe et de contrôle d'erreurs au moment de la compilation avec l'éclipse. Vrai, vous pourriez se développer dans un vrai dossier de Java, puis copiez et pâte, mais si vous se servant des expressions de XSL, vous êtes hors de la chance. De plus, une fois la course, ce code obtient compilée par Cocoon, et s'il y a une erreur, le stacktrace est de 50 milles de long. Ceci rend le processus d'élimination des imperfections difficile. Je suis heureux j'ai eu l'expérience fonctionner avec le cocon. Je sais maintenant ses forces et pièges comme cadre potentiel de Web.  Généralement je pense que je limiterai XML au repérage vers le haut des données et laisserai la logique au python.

« Des entrées plus anciennes