Jadual Kandungan
是否使用框架?
是否需要自己开发框架?
Rumah pembangunan bahagian belakang tutorial php APP创业项目后端语言选择

APP创业项目后端语言选择

Jun 20, 2016 pm 12:31 PM

对于刚创业的团队,资金和人才配备没有成型的大公司充分,因此在技术选型上须充分思考。本文针对后端语言选择问题作出分析,不会涉及到语言优劣问题,笔者认为语言遵循优胜劣汰规则,能够继续生存下来的语言都是好的语言,只是各自适合解决不同的问题。

APP项目的后端语言通常有:JAVA、PHP、Python、Ruby、.NET、JS等。笔者在项目中只接触过JAVA、PHP、Python和JS,对于Ruby和.NET没有实践方面的认知,那么首先排除一下他们俩。据说Ruby以敏捷著称,但是它还是太年轻了,在创业项目上我更愿意选择一个成熟稳健的技术。.NET出自微软,从asp开始微软在WEB后端开发就非常优秀,但是一直不是互联网公司的首选,正如服务器领域Windows一直不是首选一样。NodeJS在JS风靡全栈的潮流下,也成为了很多团队的选择之一,但是不选择它的原因跟Ruby一样。那么就剩下JAVA、PHP和Python了。

JAVA作为一个全栈语言,WEB后端、Android、数据分析、机器学习、桌面软件等都是手到擒来,特别是一些体制内政府部门的项目,他们会指定使用JAVA和Oracle。

如果团队有JAVA的成手,那么它是不二的选择。但是我们团队一直不使用JAVA作为后端开发,只有一个原因,JAVA编译调试太慢了,当你修改了一些程序后,想测试下,你必须重新编译并且重启服务器,虽然这些IDE都自动帮你做了,但这仍然是需要时间的。

PHP作为后端的老牌语言,百度、微博等公司的很多大小项目都是基于它。

后端你要用到的它都有,兼顾幼儿园到大学各个级别的开发人员。也正因为此,一些程序员觉得PHP写的程序不上档次,实际上PHP跟JAVA语言一样,也可以写得很高大上。

PHP是脚本语言,编写后测试只需刷新浏览器即可,这也带来了一个问题,软件没法打包成商业软件销售,一旦销售出去,源代码就出去了。然而近年出现的Phalcon框架,其开发团队推出的Zephir语言,可以跟PHP语言一样编写C代码,最后可以编译为二进制的PHP扩展,不但保护了源代码,还提升了运行性能。

PHP拥有各种优秀的框架,Phalcon、Laravel、Yii、CakePHP、CodeIgnitor、Yaf、Zend Framework,有的组件丰富,有的仅实现了MVC,轻重灵活。

但PHP离开了后端开发几乎没有什么作为了。

Python作为一个无比灵活的语言,凭借其脚本语言的灵活性和不错的性能优势,近年来也成为后端开发的选择之一。

它具有PHP脚本语言的优势,又几乎是全栈的,可以写桌面软件、数据分析、机器学习,甚至有人用它写APP客户端。

Python不是为后端开发而生的,但是Django、Flask、Webpy等框架让它在后端开发方面成为可能,而且还非常出色。Django框架虽然优秀,但是有点过了,帮助开发者实现的过多了,将开发者限死在一个框框中,常常会让你觉得进退两难。例如ORM机制,简单写些数据读写还不错,涉及到复杂的关联查询就费劲了;还有它的用户模块,直接帮开发者实现了用户、组、权限管理、认证登录等一系列功能,小项目上手就不用做用户模块了,但是大项目用户模块需要非常灵活,例如微信、微博等第三方登陆,以及跨项目共享Session。

Python的服务端程序依赖于uwsgi和nginx,uwsgi作为python的服务器软件来处理Http请求,由于其功能、性能和稳定性问题,通常会使用nginx作为其前端服务器,两层服务器架构对于小网站来讲,增加了维护困难。

既然是脚本语言,源代码就难以保护。

是否使用框架?

一定要使用框架,为了便于项目合作和项目交接,基于框架编写的代码更具有规范性和可读性。

是否需要自己开发框架?

如果团队水平已经到了自己编写框架的程度,本文也就不需要看了。能写成一个优秀的框架可以写,如果只是刚刚学习写,那么还是不要在创业项目上尝试了。

简要说明了三种语言适用性,具体选择首要根据业务和团队客观因素,已有成熟技术体系则无需刻意更改,对于刚组建的创业团队,如果项目较大,我推荐使用PHP,框架推荐Laravel或者Phalcon,调试能力较强的推荐Phalcon,服务器软件使用Nginx;如果项目较小,我推荐使用Python,框架推荐Django,充分遵守Django的规则,服务器软件用uwsgi和Nginx。

——————————————–

本站除标注[FW]和资讯文章外都为原创文章,转载请注:

转载来源:Coming X

原文链接: APP创业项目后端语言选择

——————————————–

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1662
14
Tutorial PHP
1262
29
Tutorial C#
1235
24
Terangkan jenis ralat yang berbeza dalam PHP (notis, amaran, ralat maut, ralat parse). Terangkan jenis ralat yang berbeza dalam PHP (notis, amaran, ralat maut, ralat parse). Apr 08, 2025 am 12:03 AM

Terdapat empat jenis kesilapan utama dalam PHP: 1.Notice: yang paling sedikit, tidak akan mengganggu program, seperti mengakses pembolehubah yang tidak ditentukan; 2. Amaran: Serius daripada notis, tidak akan menamatkan program, seperti tidak mengandungi fail; 3. FatalError: Yang paling serius, akan menamatkan program ini, seperti tidak memanggil fungsi; 4. ParseError: Kesalahan sintaks, akan menghalang program daripada dilaksanakan, seperti lupa untuk menambah tag akhir.

Terangkan hashing kata laluan yang selamat di PHP (mis., Password_hash, password_verify). Mengapa tidak menggunakan MD5 atau SHA1? Terangkan hashing kata laluan yang selamat di PHP (mis., Password_hash, password_verify). Mengapa tidak menggunakan MD5 atau SHA1? Apr 17, 2025 am 12:06 AM

Dalam php, kata laluan_hash dan kata laluan 1) password_hash menjana hash yang mengandungi nilai garam untuk meningkatkan keselamatan. 2) Kata Laluan_verify Sahkan kata laluan dan pastikan keselamatan dengan membandingkan nilai hash. 3) MD5 dan SHA1 terdedah dan kekurangan nilai garam, dan tidak sesuai untuk keselamatan kata laluan moden.

PHP dan Python: Membandingkan dua bahasa pengaturcaraan yang popular PHP dan Python: Membandingkan dua bahasa pengaturcaraan yang popular Apr 14, 2025 am 12:13 AM

PHP dan Python masing -masing mempunyai kelebihan mereka sendiri, dan memilih mengikut keperluan projek. 1.PHP sesuai untuk pembangunan web, terutamanya untuk pembangunan pesat dan penyelenggaraan laman web. 2. Python sesuai untuk sains data, pembelajaran mesin dan kecerdasan buatan, dengan sintaks ringkas dan sesuai untuk pemula.

PHP dalam Tindakan: Contoh dan aplikasi dunia nyata PHP dalam Tindakan: Contoh dan aplikasi dunia nyata Apr 14, 2025 am 12:19 AM

PHP digunakan secara meluas dalam e-dagang, sistem pengurusan kandungan dan pembangunan API. 1) e-dagang: Digunakan untuk fungsi keranjang belanja dan pemprosesan pembayaran. 2) Sistem Pengurusan Kandungan: Digunakan untuk penjanaan kandungan dinamik dan pengurusan pengguna. 3) Pembangunan API: Digunakan untuk Pembangunan API RESTful dan Keselamatan API. Melalui pengoptimuman prestasi dan amalan terbaik, kecekapan dan pemeliharaan aplikasi PHP bertambah baik.

Apakah kaedah permintaan HTTP (dapatkan, pos, letakkan, padam, dll) dan kapan masing -masing harus digunakan? Apakah kaedah permintaan HTTP (dapatkan, pos, letakkan, padam, dll) dan kapan masing -masing harus digunakan? Apr 09, 2025 am 12:09 AM

Kaedah permintaan HTTP termasuk GET, POST, PUT dan DELETE, yang digunakan untuk mendapatkan, menghantar, mengemas kini dan memadam sumber masing -masing. 1. Kaedah GET digunakan untuk mendapatkan sumber dan sesuai untuk operasi membaca. 2. Kaedah Pos digunakan untuk menyerahkan data dan sering digunakan untuk membuat sumber baru. 3. Kaedah Put digunakan untuk mengemas kini sumber dan sesuai untuk kemas kini lengkap. 4. Kaedah Padam digunakan untuk memadam sumber dan sesuai untuk operasi penghapusan.

PHP: Bahasa utama untuk pembangunan web PHP: Bahasa utama untuk pembangunan web Apr 13, 2025 am 12:08 AM

PHP adalah bahasa skrip yang digunakan secara meluas di sisi pelayan, terutamanya sesuai untuk pembangunan web. 1.PHP boleh membenamkan HTML, memproses permintaan dan respons HTTP, dan menyokong pelbagai pangkalan data. 2.PHP digunakan untuk menjana kandungan web dinamik, data borang proses, pangkalan data akses, dan lain -lain, dengan sokongan komuniti yang kuat dan sumber sumber terbuka. 3. PHP adalah bahasa yang ditafsirkan, dan proses pelaksanaan termasuk analisis leksikal, analisis tatabahasa, penyusunan dan pelaksanaan. 4.Php boleh digabungkan dengan MySQL untuk aplikasi lanjutan seperti sistem pendaftaran pengguna. 5. Apabila debugging php, anda boleh menggunakan fungsi seperti error_reporting () dan var_dump (). 6. Mengoptimumkan kod PHP untuk menggunakan mekanisme caching, mengoptimumkan pertanyaan pangkalan data dan menggunakan fungsi terbina dalam. 7

Bagaimana PHP mengendalikan fail memuat naik dengan selamat? Bagaimana PHP mengendalikan fail memuat naik dengan selamat? Apr 10, 2025 am 09:37 AM

PHP mengendalikan fail muat naik melalui pembolehubah fail $ \ _. Kaedah untuk memastikan keselamatan termasuk: 1. Semak kesilapan muat naik, 2. Sahkan jenis dan saiz fail, 3. Mencegah penindasan fail, 4. Pindahkan fail ke lokasi storan tetap.

Terangkan perbezaan antara diri ::, ibu bapa ::, dan statik :: dalam php oop. Terangkan perbezaan antara diri ::, ibu bapa ::, dan statik :: dalam php oop. Apr 09, 2025 am 12:04 AM

Dalam phpoop, diri :: merujuk kepada kelas semasa, ibu bapa :: merujuk kepada kelas induk, statik :: digunakan untuk mengikat statik lewat. 1.Self :: digunakan untuk kaedah statik dan panggilan berterusan, tetapi tidak menyokong pengikatan statik lewat. 2.Parent :: digunakan untuk subkelas untuk memanggil kaedah kelas induk, dan kaedah peribadi tidak dapat diakses. 3.Static :: Menyokong pengikatan statik lewat, sesuai untuk warisan dan polimorfisme, tetapi boleh menjejaskan kebolehbacaan kod.

See all articles