Sitesi Geliştirme - Setup (editör, proje yönetimi, test sitesi, canlı sitesi .. vb)

3 Cevap php

Beyler Hey, ben Web Geliştirme iş için nispeten yeni. Beni ve 2 arkadaş kendi küçük şirket başladı. 1 kişi 1 kişi satış / danışman, bir tasarımcı, ve ben geliştirici değilim. Şu vea, onun çalışma projesi sonra, ama biz genişletmek ve bu bizim tam zamanlı iş haline izin umuyoruz.

Neyse, benim size sorum, tam bir web geliştirme, proje döngüsü hakkında gitmek için en iyi yolu budur.

Görüşmek şeyler listesi:

  • Proposals - Siz bu önemli bulurum
  • Project Planning - ne kadar planlama ve haritalama Çıkış olmalıdır?
  • Project Management Softwvardır - I did a little research before ve I like the online portals. Parallels stood out for me.
  • Editor tools - I have been using the most basic editor Notepad++. I feel like I should be using something more advanced.
  • PHP Framework - I just got hooked on CodeIgniter.
  • Ways to deploy site - right now I am doing most of my editing via FTP to the live site. Should I be working on a local copy ve then uploading to a test site for the client? Then eventually go to the live server. Are there ways to automate this? (best practice ?)

Özellikle ona gazileri millet, tüm giriş duymak için sabırsızlanıyorum!

3 Cevap

Proposals

Bu gerçekten bakıyorsun müşteri ne tür bağlıdır. Eğer orta müşterilerine küçük ile ilgili olacak çünkü muhtemelen şirketin başında gerekli olmayacak, ama onun değil kötü alışkanlığı içine almak. Ben serbest web geliştirme biraz yaptım, ben bir öneri-tabanlı bir sistemde işe yaramadı. Bunun yerine, ben bir site mockup-> değişiklikleri-> uygulama sisteminin daha yaptım. Ben bir mockup bir teklifin bir şeklidir herhalde ...

Project Planning

Yine, bu projenin büyüklüğüne bağlıdır. Eğer statik bir 20 küsur sayfalık web sitesinde çalışıyorsanız, muhtemelen planlama yönü içine çok fazla almak istemiyorum. Eğer teknolojileri çok sayıda (forumlar, CMS, AJAX, web hizmetleri, vb) içine çeker bir site ile çalışıyorsanız Ancak, muhtemelen daha önceden küçük bir yatırım yapmak istiyorum.

Project Management Software

Ben hiç bir serbest web geliştirici olarak benim günlerinde bir proje yönetim aracı kullanmış diyemeyiz. Ben şu anda bir şey yatırım yok derim. Şirketiniz büyür sonra, ne gereksinimleri daha iyi bir fikir olacak.

Editor tools

Notepad + + şimdi kesebilir, ama uzun vadede bunu tavsiye etmem. Eğer PHP başka teknolojiler de arıyorsanız, kesinlikle tavsiye ederim. Eğer daha fazla olan bir müşteri bakıyorsanız aslında, "iş-kullanıcı" ASP.NET veya J2EE içine alma hakkında düşünmek gerekir bir tipti. Bu PHP hataların bir ton ortadan kaldırmak yardımcı olabilir gibi ben, en azından kod tamamlama vardır bir PHP IDE almak öneririz. Ben Notepad + + bu varsa emin değilim. Ayrıca muhtemelen IDE entegre bir hata ayıklayıcı almak istiyorum. Eclipse bir kaç yıl önce bir PHP IDE vardı biliyorum, ama ben bu gün ne kadar iyi emin değilim.

PHP Framework

Gerçekten herhangi bir PHP çerçeveler kullanılır ama mezun ve kendimi bunlardan herhangi öğretmek için zaman vardı önce bir iş var çünkü bu asla. Ne olursa olsun uyar ile gidin :). Bazı projeler bazı çerçeveler ile daha iyi uyacak beri muhtemelen birden fazla alışmak istiyorum.

Ways to deploy site

Defintely, kesinlikle bir yerel sunucu set-up olsun. Bir WAMP / LAMP kurulumu dev makine gerçekten kolayca kurmak alabilirsiniz. Diğerleri söylediler, muhtemelen çünkü Murphy Kanunu kaynak denetimi kullanmak istiyorum. Ben gerçekten bu kadar PHP gelişmekte olan değil ve bu beni gerçekten hızlı bir çalışma ortamı elde etmek için izin verir gibi Şahsen ben son birkaç yıldır WAMPServer kullanarak oldum. Ama daha da devenv özelleştirmek isteyebilirsiniz. Ama kesinlikle gerçek bir veritabanı ile bir canlı sunucuya dağıtmadan önce bir kukla veritabanı ile bir kukla sunucu üzerinde uygulamaları test etmelisiniz!

Bu yardımcı olur umarım!

İmkansız Burada tek bir yazı tam olarak bu cevap, ama sana biraz punchlines vereyim:

Öneriler - Siz bu önemli bulurum

Bununla ne demek emin değil misiniz? Satış önerileri?

Proje Planlama - ne kadar planlama ve haritalama Çıkış olmalıdır?

Ön planlama çok fazla zaman harcamak yok - Eğer daha fazla satır aşağı bir kez olsun onun değerini kaybedersiniz. Ama yeterince planı yapın. Usecases ve bazı arayüz skeçler / Wireframe'lerinizin iyi değeri vardır.

Proje Yönetimi Yazılımı - Ben önce biraz araştırma yaptım ve ben online portalları gibi. Parallels benim için çarpıyordu.

Burada altın bir mermi bulmak asla. Mümkün olduğunca / olduğunca az kullanımı basit ve her zaman net bir çıkış rotası ile bir şeyler için gidin. Az daha fazladır. Ayrıca, araç bu tür, aynı zamanda, insanlar çok farklı türleri için çalışmaya ihtiyacı olduğunu akılda tutmak. Aracı olsa bir süreci destekler, böylece akılda tutmak - işlemi aracı tarafından tanımlanmış izin vermeyin.

Editör araçları - Ben en temel editörü Not Defteri'ni kullanarak edilmiştir + +. Ben daha gelişmiş bir şey kullanıyor olmalıdır gibi hissediyorum.

Ne için çalışıyor kullanın. Bunu nasıl kullanılacağını bilmek sürece iyi bir araç, başka bir şey değildir. Eğer iyi bir basit bir aracı biliyorum Aynı şekilde, çok uzak alabilirsiniz.

PHP Framework - Ben sadece CodeIgniter kaptırdı.

Aynı editörler gibi geçerlidir.

Canlı siteye FTP üzerinden hemen benim düzenleme çoğu yapıyorum - sitesi dağıtmak yolları. Ben yerel bir kopyası üzerinde çalışan ve daha sonra müşteri için bir test sitesine yükleyerek olmalı? Sonra sonunda canlı sunucuya gidin. Bu otomatikleştirmek için yolları var mı? (En iyi uygulama?)

Bu değiştirmek için yüksek bir öncelik olmalıdır. En azından, bir SCM kaynak kodu almak - Subversion en mainstream, bu yüzden o kullanmanızı öneririm. İkincisi, ayrı bir geliştirme ortamı ve üretim site olsun. Sen dev kurulum gelişebilir, ve bitti zaman, canlı siteye dağıtmak.

Sonraki adım, test ve otomatik dağıtım (bunun için google) için bakmaktır. Ama önce ilk şey - SCM ve ayrı dev / eşya kurulum alışın.

Eğer zaten okumadığınız Son olarak, Getting Real zaman değer olabilir.

Bir editör olarak, şiddetle tavsiye jEdit. Bu, çapraz-platform programlama dilleri konuşuyor, genişletilmiş işlevsellik için eklentileri çok, makro kayıt / / oynatma kaydetme, aktif olarak korunur vardır ve çok yapılandırılabilir.

Dağıtım için, Subversion sorunların bir sürü gitmek yapar. Web geliştirme için, ben genellikle iki şubesi var; devel ve live. Tüm değişiklikler devel yapılır. Eğer değişiklikleri yayınlamaya hazır olduğunuzda, bir tek svn merge operasyonu canlı şubesine aynı değişiklikleri geçerlidir.

Subversion belirli olaylar meydana geldiğinde yazılım kontrol gibi, komut dosyalarını aramak için kendi altyapı kancalar vardır. Bir post-commit kanca otomatik olarak değişir edildiği şube bağlı olarak, devel sunucu veya canlı sunucuya ya üzerine (scp, ftp, tek sesliliğin, vb) dosyaları aktarabilirsiniz. Değişiklikler onu kontrol edilir Şimdi zaman neredeyse anında ve otomatik web sitesi güncellemeleri var.

Subversion hakkında güzel bir şey, güvenlik duvarı üzerinden Subversion kendisi açmadan her yerden dosyaları değiştirebilir böylece, bir WebDAV arayüz sağlamak için Apache içine kanca olmasıdır. Eğer günlük iş bir şipşak değişiklik yapmak gerekiyorsa, bunu yapabilirsiniz.