Démarrage d'une web app en swift... réaliste ?

Bonjour,


 


Je vais démarrer un nouveau développement en partant d'une webapp.


J'hésite à  partir sur du Rails ou essayer de démarrer directement avec du Swift.


 


Je me dis que même s'il y a des tentative du genre perfect, la techno est un peu jeune et qu'Apple risque de nous proposer à  terme une solution plus solide... quoi que. Pas sûr que ce soit dans son intérêt.


 


D'un autre côté, comme je code sur mon temps libre, c'est pas évident de progresser sur plusieurs languages et de centrer sur swift me permettrait de gagner en efficacité.


 


Merci pour vos avis éclairés.  8--)


Réponses

  • CéroceCéroce Membre, Modérateur
    Le problème de Swift sur Linux, c'est que tu ne disposes pas de Foundation. Donc certes, on n'a plus besoin de NSArray et cie, parce que c'est intégré à  la syntaxe du langage, mais il manque encore des moyens de parser du JSON, par exemple.

    L'autre aspect, c'est qu'il n'y a quasiment aucun écosystème autour de Swift pour le serveur. Par exemple, si tu veux gérer les sessions " un truc que quasiment tout site évolué fait " il n'y a rien en Swift, alors que tu disposeras d'un tas de solutions avec Rails.

    Ce que j'en dis, c'est qu'il ne faut pas trop se concentrer sur le langage. Swift est un langage moderne et élégant, mais il n'a rien de très singulier. Les concepts que tu apprendras en utilisant un autre langage/framework ne seront pas perdus. Par exemple, la manière dont Rails gère les migrations de la base de données est fort intéressante, et je me demande comment faire de même dans une application Cocoa.
  • FKDEVFKDEV Membre

    Foundation est en cours de portage sur Linux : https://github.com/apple/swift-corelibs-foundation

  • FKDEVFKDEV Membre

    Tout dépend si tu cherches à  obtenir un résultat (pour un client par exemple) ou si tu cherches à  faire quelque chose.


     


    Personne ne peut dire si swift côté serveur va décoller donc il y a un risque à  l'utiliser pour un vrai projet.


     


     


    Tant qu'Apple est derrière le portage de Swift et de Foundation sur Linux je pense qu'on peut avoir de l'espoir.


     


    Le problème c'est qu'Apple peut très bien décider d'abandonner le projet du jour au lendemain pour se recentrer sur ses OS propriétaires.


     


    Donc tant que Swift sur Linux n'aura pas décollé de manière significative, il y aura un risque.


     


    Mais pour un projet perso, c'est plutôt une aventure sympa à  tenter.


     


    Personnellement, j'ai monté un serveur Ubuntu sur Linode avec une version de Swift de décembre 2015, une libraire swift pour sqlite et j'ai fait une petite API pour ma dernière app iOS.

  • MAGEMAGE Membre

    Un grand merci pour vos retours


  • Je sais que le post est assez ancien mais j'ai voulu tenter l'aventure il y a quelques mois donc je peux faire un retour d'expérience.


    Après la conférence dotSwift j'étais motivé pour tester les solution serveur de Swift, notemment celles fournies par IBM.


    J'ai assez vite déchanté quand j'ai voulu faire un webservice complet. 


    • c'est encore très peu documenté au niveau de l'utilisation des outils et libs open source.
    • il y a encore trop peu de libs pour faire des choses classiques (parsing, bases de données, jsonapi.org, etc.)

    Bref j'adore le langage sur iOS mais après 4 jours de perdus à  faire des essais/erreurs, je suis retourné à  mon webservice en PHP que j'ai codé en 3 jours, tests unitaires compris.


     


    Je pense que je resterai à  nouveau d'ici 1 an ou 2 pour voir si les outils se sont améliorés :)

  • CéroceCéroce Membre, Modérateur
    avril 2017 modifié #7
    @mbritto: Merci beaucoup de ton retour d'expérience.

    Le peu que j'en avais vu (à  dotSwift et FrenchKit) le déploiement m'avait semblé déjà  fort compliqué. Après, c'est certain que ça bosse dur à  la fois chez Apple pour porter Foundation complètement sur Linux et chez IBM pour ajouter ce qui manque à  Foundation, mais ça part de loin, surtout comparé à  des frameworks web installées depuis des années.

    Je me demande si ça ne pourrait tout de même pas s'avérer intéressant pour écrire quelques micro-services.
  • Je pense que ça dépend aussi de quelle solution tu es partis. Actuellement, Kitura, la solution de IBM n'est pas forcément la plus utilisée par la communauté qui est plutôt concentrée sur Vapor et surtout Perfect.


     


    Un article ici fait une liste des fonctionnalités des différents framework server side en swift : https://medium.com/@rymcol/current-features-benefits-of-the-top-server-side-swift-frameworks-b15b4f2d7bc3


     


    Je trouve que depuis 1 an énormément de progrès ont été fait même si je suis d'accord que c'est encore peu mature. Apple discute à  ce sujet avec les principaux contributeurs pour apporter davantage de standard autour.


Connectez-vous ou Inscrivez-vous pour répondre.