คำถามติดแท็ก web-applications

เว็บแอปพลิเคชันคือแอปพลิเคชันที่เข้าถึงได้ผ่าน "เว็บ" ซึ่งอาจหมายถึงอินเทอร์เน็ตหรือเครือข่ายภายใน (อินทราเน็ต)

6
โซลูชันคีย์ลิขสิทธิ์ในเว็บแอปพลิเคชันวิธีที่ดีที่สุดคืออะไร
ฉันถูกนิ่งงันโดยคำขอจากผู้จัดการของฉัน ฉันทำงานเพื่อเริ่มต้นเล็ก ๆ และเราพัฒนาเว็บแอปพลิเคชั่นในอัตราคงที่ด้วยข้อตกลงการบำรุงรักษาสำหรับ บริษัท ขนาดใหญ่มาก รู้เรื่องสยองขวัญเกี่ยวกับวิธีที่ บริษัท ขนาดใหญ่จะจ่ายเงินค่าของพวกเขาไปยังวินาทีสุดท้ายที่เราตัดสินใจว่าเราต้องการที่จะปกป้องตัวเองโดยสามารถใบอนุญาตเว็บแอปพลิเคชันนี้ในแบบที่ถ้าเราไม่ได้รับเงินซอฟต์แวร์ไม่ทำงานอีกต่อไป ฉันเคยเห็นสิ่งนี้ทำมาก่อนสำหรับแอปพลิเคชันเดสก์ท็อป แต่นี่จะเป็นเว็บแอปพลิเคชันที่พวกเขาจะโฮสต์ภายในและจะไม่สามารถเข้าถึงได้จากอินเทอร์เน็ต อะไรคือวิธีที่ดีที่สุดในการทำเช่นนี้เราต้องการให้มีขนาดเล็กและต้องการความสามารถในการต่ออายุคีย์ใบอนุญาตที่พวกเขาเผยแพร่ มีใครทำอะไรที่คล้ายกันบ้างไหม? พวกเราหมดความคิดหรือเปล่า? ใครบ้างที่มีข้อเสนอแนะที่ดีกว่า?

6
“ คลาวด์” คืออะไรและเกี่ยวข้องกับการพัฒนาอย่างไร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน9 เดือนที่ผ่านมา ฉันยังคงได้ยินเกี่ยวกับเทคโนโลยีคลาวด์แม้ว่าส่วนใหญ่จะอยู่ในการพัฒนาเครือข่ายสังคมออนไลน์ ฯลฯ ฉันเคยได้ยินเกี่ยวกับมันในวันนี้อีกครั้งและตอนนี้ฉันอยากรู้มาก: 'คลาวด์' คืออะไรและเกี่ยวข้องกับฉันอย่างไร (ในกรณีของฉัน เดา) ในฐานะนักพัฒนาเว็บ? ฉันจะตอบคำถามที่ฉันถูกถามได้อย่างไร - "อยู่บนคลาวด์หรือไม่" - โดยไม่พูดว่า "สิ่งที่คุณถามนั้นไม่มีความหมาย"

6
อะไรคือวิธีที่ดีที่สุดในการขยายและแยกทีมเปรียวที่สร้างแอปพลิเคชันบนเว็บ
เมื่อเร็ว ๆ นี้ฉันได้เข้าร่วม บริษัท ที่ฉันทำงานเป็นอาจารย์การต่อสู้ในโครงการพัฒนาแบบว่องไวที่สร้างแอปพลิเคชันเว็บ ทีมกำลังจะมีขนาดสูงสุดสำหรับทีมเปรียว (คาดว่า 9 สัปดาห์หน้า) เราได้พูดคุยเกี่ยวกับการแยกทีมออกเป็นสองทีมไม่มากนักที่จะทำให้สั้นลง (ซึ่งไม่มากเกินไปในขณะนี้) แต่เพื่อหยุดยั้งผู้คนจากการเบื่อในการวางแผนการวิ่งอย่างรวดเร็ว มีสองเลเยอร์ที่แตกต่างกันมากสำหรับโครงการ - แบ็กเอนด์ด้านเทคนิคขั้นสูง (เช่นซับซ้อนอย่างยิ่ง) และการออกแบบ / สร้าง / การรวม UI ดูเหมือนว่าเมื่อพวกแบ็กเอนด์กำลังพูดถึงด้านเทคนิค UI ของพวกเขาจะถูกแบ่งออกและในทางกลับกัน ดูเหมือนว่าจะมีเหตุผลในการแบ่งทีมถ้าจะมีเวลามากขึ้นอย่างมีประสิทธิภาพ แต่ฉันมีการจองครั้งใหญ่ครั้งหนึ่งในทุกสิ่งที่ฉันอาจจะทำจริงๆคือลดการทำงานร่วมกันและการแบ่งปันความรู้ ทั้งสองทีมไม่มีความคิดที่ดีเกี่ยวกับสิ่งที่เหลือของทีมกำลังสร้าง ใครบ้างมีประสบการณ์ในการจัดการกับสิ่งนี้?

4
เหตุใดจึงต้องใช้ phpunit เมื่อใช้การทดสอบด้วยตนเองแบบดั้งเดิม
เมื่อฉันสร้างแอปพลิเคชันเว็บฉันจะทดสอบงานของฉันบนเบราว์เซอร์เพื่อดูว่าฉันได้รับข้อผิดพลาดและแก้ไขหรือไม่ ฉันได้สร้างแอพพลิเคชั่นที่ซับซ้อนและการทดสอบด้วยวิธีนี้ง่ายและรวดเร็ว ฉันได้ดูวิดีโอมากมายบน youtube เกี่ยวกับ phpunit และไม่พบจุดประสงค์ เหตุใดห้องสมุดนี้จึงมีประโยชน์ phpunit เพิ่มเติมสำหรับ pham framworks เช่น CakePHP หรือ zend หรือไม่ ฉันไม่ได้ใช้กรอบใด ๆ เพียงแค่ core php phpunit หรือจะมีประโยชน์สำหรับฉันหรือไม่ ถ้าใช่เป็นอย่างไร นอกจากนี้ยังมี xdebug แต่ฉันไม่แน่ใจว่ามันเกี่ยวข้องหรือไม่

2
"ตรรกะการนำเสนอ" คืออะไรและยอมรับได้ในมุมมองเท่าใด
ในเว็บแอปพลิเคชันของฉันฉันต้องจัดเตรียมแบบฟอร์มสำหรับการสร้างและแก้ไข แบบฟอร์มสำหรับการสร้างและการแก้ไขมีความแตกต่างเล็กน้อยดังนั้นฉันจึงคิดที่จะทำสิ่งนี้ในมุมมองของฉัน: <form> // a lot of htnl goes here @if (editing) { // some more fields shown in edit mode } @if(!editing) { // some stuff shown in create mode } ฉันพยายามไม่ใส่ifข้อความใด ๆในมุมมองของฉัน แต่ครั้งนี้ฉันไม่เห็นตัวเลือกอื่นนอกจากคัดลอกส่วนใหญ่ของ HTML ในสองแห่งซึ่งฉันไม่ต้องการทำ นี่เป็น "ตรรกะการนำเสนอ" ที่เหมาะสมหรือไม่และมีตัวเลือกอื่น ๆ อีกหรือไม่

3
มัลติเธรดแตกต่างกันอย่างไรในแอปพลิเคชันบนเว็บที่ใช้ Java เทียบกับแอปพลิเคชัน Java สแตนด์อะโลน
ฉันค่อนข้างใหม่สำหรับ Java และประสบการณ์ของฉันถูก จำกัด เฉพาะแอปพลิเคชันบนเว็บที่ทำงานบน Web Container (Jboss ในกรณีของฉัน) ฉันถูกต้องหรือไม่ที่บอกว่าสำหรับเว็บแอปพลิเคชั่นเว็บคอนเทนเนอร์จะดูแลมัลติเธรดหรือไม่ ถ้าเป็นเช่นนั้นฉันสามารถแนะนำดอกยางใหม่ในแอพพลิเคชั่นบนเว็บได้หรือไม่? มีข้อได้เปรียบในการทำเช่นนั้นหรือไม่และในสถานการณ์ใดที่จะต้องทำเช่นนั้น?

4
Ruby, Python, PHP จัดการโดยไม่มีสปริงอย่างไร
ฉันเขียนแอปพลิเคชัน Java ขององค์กรและบริการเว็บในที่ทำงาน ( Spring , Hibernate, Maven, RESTEasy) และ PHP (CakePHP) และ Python (Django) สำหรับโปรเจคด้านข้างของฉัน ในขณะที่ฉันเห็นคุณค่าของ Inversion of Control, Aspect Oriented Programming และอื่น ๆ ที่ Spring นำเข้ามาฉันไม่แน่ใจว่าเว็บแอปพลิเคชั่นขนาดใหญ่ที่ไม่ได้อยู่ในจาวาสแต็กจัดการโดยไม่มีกรอบเช่น Spring ดังนั้นนักพัฒนาจะต้อง "ทนกับ" ส่วนประกอบที่แน่นหนาและความคับข้องใจอื่น ๆ ที่ Spring กำจัดหรือฉันขาดอะไรไปหรือเปล่า? สำหรับผู้ที่ไม่คุ้นเคยกับ Spring คุณลักษณะที่เราใช้บ่อยที่สุดคือ: Inversion of Control container: การกำหนดค่าของส่วนประกอบแอพพลิเคชั่นและการจัดการวงจรชีวิตของวัตถุ Java, การเขียนโปรแกรมเชิงมุมมอง: ช่วยให้การใช้งานของกิจวัตรตัดข้าม การจัดการธุรกรรม: รวบรวม API …

4
อธิบาย Model View Controller
ประสบการณ์ของฉันกับการพัฒนาเว็บไซต์แบบไดนามิกนั้น จำกัด อยู่ที่ servlets Java เป็นส่วนใหญ่ ฉันใช้ Tomcat เพื่อพัฒนา Java servlets ต่างๆและฉันไม่ลังเลที่จะพูดว่าฉันมีความเชี่ยวชาญในเทคโนโลยีนี้พอ ๆ กับ HTML / CSS / Javascript ฝั่งไคลเอ็นต์สำหรับส่วนหน้า เมื่อฉันคิดว่า "เว็บไซต์ไดนามิก" ฉันคิดว่า: ผู้ใช้ร้องขอ URL ด้วยสตริงข้อความค้นหาเซิร์ฟเวอร์ได้รับข้อความค้นหาแล้วดำเนินการกับ HTML แบบไดนามิกเพื่อตอบแบบสอบถาม ซึ่งมักเกี่ยวข้องกับการสื่อสารกับฐานข้อมูลเพื่อดึงข้อมูลที่ร้องขอเพื่อแสดงผล นี้นั้นเป็นความคิดที่อยู่เบื้องหลังdoGetวิธีการของ HttpServletJava แต่ทุกวันนี้ฉันได้ยินเกี่ยวกับกรอบใหม่ ๆ มากขึ้นเช่น Django และ Ruby on Rails ซึ่งทั้งหมดนี้ใช้ประโยชน์จากสถาปัตยกรรม "Model View Controller" ฉันอ่านบทความต่าง ๆ ที่อธิบาย MVC แล้ว แต่ฉันมีปัญหาในการเข้าใจถึงประโยชน์ ฉันเข้าใจว่าแนวคิดทั่วไปคือการแยกตรรกะทางธุรกิจออกจากตรรกะ …

3
เว็บเซสชัน“ ออกแบบไม่ดี” หรือไม่? ทำไม?
เมื่อวันก่อนฉันกำลังคุยกับเพื่อนร่วมงานและเขาออกมาบอกว่าการใช้เซสชันของผู้ใช้ในเว็บแอปพลิเคชันนั้นผิด ฉันตอบว่ามันอาจจะผิดขึ้นอยู่กับข้อมูลที่คุณเก็บไว้มิฉะนั้นทำไมบริการเซสชั่นเว็บถึงต้องถูกจัดเตรียมโดย Microsoft (เรากำลังพูดถึง ASP.NET) เขาตอบฉันอีกครั้งว่าแม้ใน MS พวกเขาสามารถตอบฉันได้อย่างง่ายดายว่ามันเป็นการออกแบบที่ไม่ดี และเขาสามารถแสดงเอกสารสีขาวให้ฉันดูได้ น่าเสียดายที่ฉันไม่มีโอกาสติดต่อกับผู้ชายคนนี้อีกต่อไป แต่ฉันอยากจะเข้าใจมากขึ้นเกี่ยวกับมุมมองของเขา ใครบ้างมีข้อมูล / มุมมองเกี่ยวกับที่นี่?

4
เหตุใด XSLT จึงไม่ค่อยถูกใช้บนเว็บ? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา XSLT เป็นมาตรฐานที่ผู้ใหญ่ยอมรับอย่างกว้างขวาง มันสามารถใช้ในเบราว์เซอร์ (แม้แต่ใน IE เก่า) และบนฝั่งเซิร์ฟเวอร์ (nginx มีโมดูล XSLT ซึ่งสามารถใช้ได้จากภาษาการเขียนโปรแกรมแน่นอน) การใช้งานของมันจะรวบรวมและดังนั้นควรจะเร็วกว่า Python หรือ JS การติดตั้ง JS Saxon JS สามารถใช้อย่างน้อยเป็นทางเลือก จินจา, เชิงมุม, รูบี้ของ Slim, ASP และ PHP เทมเพลตยังไม่ได้ใกล้เคียง เท็มเพลต XSL สามารถตรวจสอบได้ง่ายใน IDE IDEs สามารถช่วยกับ Jinja หรือ Angular ได้กี่ตัว ดูเหมือนว่าเป็นความคิดที่สมบูรณ์แบบในการแยกส่วน UI และข้อมูลด้วย XSLT เป็นที่ยอมรับการใช้งานสามารถให้ผลลัพธ์ที่แตกต่างในบางกรณีมุม …

6
แนวทางสถาปัตยกรรมสำหรับ“ หน้าเว็บแอปเดียว”
ฉันจะเริ่มโครงการด้านข้างเพื่อสร้างแอปพลิเคชันเว็บ "หน้าเดียว" แอปพลิเคชันต้องเป็นแบบเรียลไทม์ส่งการอัปเดตไปยังลูกค้าเมื่อมีการเปลี่ยนแปลงเกิดขึ้น มีแหล่งข้อมูลที่ดีสำหรับแนวทางการปฏิบัติที่ดีที่สุดหรือไม่สถาปัตยกรรมสำหรับการใช้งานประเภทนี้ แหล่งข้อมูลที่ดีที่สุดที่ฉันเคยพบคือบทความเกี่ยวกับสถาปัตยกรรม trello ที่นี่: http://blog.fogcreek.com/the-trello-tech-stack/ สำหรับฉันแล้วสถาปัตยกรรมนี้ถึงแม้ว่าจะเซ็กซี่มาก แต่ก็อาจจะเกินความต้องการเฉพาะของฉัน - แม้ว่าฉันจะมีข้อกำหนดที่คล้ายกัน ฉันสงสัยว่าฉันต้องรำคาญกับ sub / pub ที่ฝั่งเซิร์ฟเวอร์ฉันไม่เพียงแค่ผลักดันการอัปเดตจากเซิร์ฟเวอร์เมื่อมีบางอย่างเกิดขึ้น (เช่นเมื่อไคลเอ็นต์ส่งการอัปเดตไปยังเซิร์ฟเวอร์เขียนอัปเดตไปยัง db จากนั้นส่งการอัปเดตไปยังลูกค้า) เป็นเรื่องที่ชาญฉลาดฉันอาจต้องการสร้างสิ่งนี้ใน Node.JS หรืออาจเป็น Ruby แม้ว่าแนวทางสถาปัตยกรรมควรมีผลบังคับใช้กับเทคโนโลยีเซิร์ฟเวอร์พื้นฐานใด ๆ

5
แนวทางปฏิบัติที่ดีที่สุดสำหรับการพิสูจน์ตัวตน / ความปลอดภัยของเว็บแอปพลิเคชัน (ทุกแพลตฟอร์ม)
ฉันได้รับคำถามในวันนี้จากผู้จัดการของฉันถามความคิดของฉันเกี่ยวกับสิ่งที่ถือว่าเป็นการออกแบบที่ยอมรับได้สำหรับการรับรองความถูกต้องของแอปพลิเคชันแบบฟอร์มเว็บโดยเฉพาะอย่างยิ่งเกี่ยวกับธรรมชาติของเบราว์เซอร์ยอดนิยมจำนวนมาก . ฉันมีปัญหาในการหาคำตอบที่ฉันรู้สึกว่าเป็นที่ยอมรับ ในแง่ของข้อบกพร่องด้านความปลอดภัยที่น่าอายของ Sony ฉันต้องการระวังอย่างแท้จริงแม้ว่าข้อมูลที่จัดเก็บในคนจะมีความไวต่ำกว่า เราไม่ได้จัดเก็บหมายเลขประกันสังคมหรือที่อยู่อย่างไรก็ตามเรากำลังจัดเก็บหมายเลขโทรศัพท์ที่อยู่อีเมลและรูปถ่ายของผู้เข้าชม เขามีความกังวลว่าผู้ใช้สามารถจดจำรหัสผ่านบนเทอร์มินัลสาธารณะได้จากนั้นบางคนสามารถข้ามไปที่เทอร์มินัลนี้และเริ่มดูหรือแก้ไขข้อมูลด้วยวิธีที่ไม่ได้รับอนุญาต ฉันค่อนข้างแน่ใจ แต่อย่างน้อยบนเวิร์กสเตชัน Windows เบราว์เซอร์จะไม่ "จดจำรหัสผ่าน" ในบัญชีผู้ใช้ Windows นอกเหนือจากนี้ฉันกำลังใช้การเข้ารหัสรหัสผ่านทางเดียวที่ฝั่งเซิร์ฟเวอร์ (เก็บรหัสผ่านที่เข้ารหัสไว้ในฐานข้อมูลเข้ารหัสรหัสผ่านที่ผู้ใช้ระบุบนเซิร์ฟเวอร์เปรียบเทียบกับสตริงที่เข้ารหัสจากฐานข้อมูล) ไม่มีแผนในทันทีที่จะรวมการเข้ารหัส SSL อย่างไรก็ตามยังคงเป็นตัวเลือก มีข้อบกพร่องด้านความปลอดภัยที่สำคัญด้วยวิธีนี้หรือไม่? คุณมีคำแนะนำที่ดีกว่านี้ไหม?

2
เราควรรวบรวมเว็บไซต์ของเราเป็น dll เดียวหรือ dll ต่อหน้า?
เรากำลังพัฒนาโครงการใหม่ที่จะนำไปใช้กับเว็บไซต์ลูกค้าจำนวนมาก โครงการนี้มี GUI บนเว็บเป็นหนึ่งใน "จุดเชื่อมต่อ" ความเร็วของอินเทอร์เฟซทางเว็บเป็นสิ่งสำคัญสำหรับโครงการนี้รองจากความปลอดภัยเท่านั้น ในอดีตเราเคยสร้าง "เว็บไซต์" ใน Visual Studio ซึ่งเมื่อเผยแพร่แล้วจะส่งผลให้หนึ่งไฟล์ dll และไฟล์ aspx หนึ่งไฟล์สำหรับแต่ละหน้าภายในระบบ อย่างไรก็ตามฉันทราบว่าคุณสามารถสร้าง "เว็บแอปพลิเคชัน" และรวบรวมทุกอย่างให้เป็น dll เดียว สำหรับฉัน (ไม่มีข้อมูลจริงเพียงแค่ความรู้สึก) การรวบรวมเว็บไซต์เป็น dll เดียวดูเหมือนว่ามันจะดีกว่าสำหรับการรักษาความปลอดภัยและความเร็ว (ถ้าเพียงเล็กน้อย) เราควรพิจารณาถึงสิ่งใดบ้างและมีข้อผิดพลาดที่ชัดเจนใด ๆ ที่เราควรทราบเมื่อเลือกวิธีการที่เหมาะสมสำหรับเรา

2
โครงสร้างของ RESTful Service พร้อม Java Spring สำหรับผู้เริ่มต้น
ฉันค่อนข้างใหม่ในแง่ของทักษะการพัฒนาเว็บ Java ฉันมีโครงการที่ฉันคิดว่าจะทำให้ผู้สมัครที่ดีสำหรับบริการ RESTful จากสิ่งที่ฉันเข้าใจเกี่ยวกับ API น้อย ฉันพยายามที่จะดูรายละเอียดว่ามันควรจะมีโครงสร้างอย่างไร แต่ไม่ได้ไปที่ใดก็ได้ในแง่ของการค้นหาของ google และอ่านเนื้อหาที่ฉันมีอยู่แล้ว ฉันหวังว่าโพสต์นี้จะให้การตรวจสอบและ / หรือการเปลี่ยนเส้นทางในแง่ของความรู้และสมมติฐานของฉันในหัวข้อนี้ ข้อสันนิษฐานปัจจุบันของฉันคือการให้บริการที่สงบของฉันจะมีโครงสร้างดังต่อไปนี้: ข้อมูลฐานข้อมูล (SQL) ORM (ฉันใช้ ORM ที่ค่อนข้างไม่เป็นที่นิยมเรียกว่า CPO แต่สิ่งนี้จะถูกแทนที่ด้วย Hibernate กับคนส่วนใหญ่) คลาสผู้จัดการ Java ด้วยวิธีการที่พูดคุยกับ ORM เพื่อรับข้อมูล คลาสตัวควบคุม Java / คลาสที่จัดการการแมปคำขอและใช้@ResponseBodyเพื่อกำหนด / จัดการ URL และการกระทำของวิธีการจัดการข้อมูลผ่านทางคำกริยา HTTP ( http://mysite.com/computers/dellอาจมีการGETร้องขอด้วยคำว่า "dell" ใน URL เป็นพารามิเตอร์ที่จะส่งคืนอาร์เรย์ของข้อมูล JSON เกี่ยวกับคอมพิวเตอร์เดลล์) บริการนี้ควรทำด้วย Spring Boot …

4
วิธีจัดการอีเมลอัตโนมัติที่ส่งมาจากเว็บแอปพลิเคชัน
ฉันกำลังออกแบบโปรแกรมประยุกต์บนเว็บและฉันสงสัยว่าจะออกแบบสถาปัตยกรรมเพื่อจัดการการส่งอีเมลอัตโนมัติได้อย่างไร ขณะนี้ฉันมีคุณสมบัตินี้ในเว็บแอปของฉันและอีเมลจะถูกส่งตามการป้อนข้อมูล / การโต้ตอบของผู้ใช้ (เช่นการสร้างผู้ใช้ใหม่) ปัญหาคือการเชื่อมต่อโดยตรงกับเซิร์ฟเวอร์อีเมลใช้เวลาสองสามวินาที การขยายตัวของแอปพลิเคชันของฉันจะเป็นคอขวดที่สำคัญในอนาคต วิธีที่ดีที่สุดในการจัดการการส่งอีเมลอัตโนมัติจำนวนมากภายในสถาปัตยกรรมระบบของฉันคืออะไร จะไม่มีการส่งอีเมลจำนวนมาก (สูงสุด 2000 ต่อวัน) ไม่จำเป็นต้องส่งอีเมลทันทีความล่าช้าสูงสุด 10 นาทีก็ใช้ได้ อัปเดต: ได้รับการจัดคิวข้อความเป็นคำตอบ แต่สิ่งนี้จะได้รับการออกแบบอย่างไร สิ่งนี้จะได้รับการจัดการในแอปและประมวลผลในช่วงเวลาที่เงียบหรือฉันต้องสร้าง 'แอปอีเมล' หรือบริการบนเว็บใหม่เพื่อจัดการคิวหรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.