CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·주식한당 ·MaClien ·일본산당 ·방탄소년당 ·자전거당 ·개발한당 ·안드로메당 ·이륜차당 ·소시당 ·나스당 ·걸그룹당 ·바다건너당 ·임시소모임 ·노젓는당 ·디아블로당 ·육아당 ·스팀한당 ·클다방 ·덕질한당 ·골프당 ·여행을떠난당 ·e북본당 ·키보드당 ·소셜게임한당 ·위스키당 ·리눅서당 ·빨콩이당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI당 ·AI그림당 ·날아간당 ·사과시계당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·곰돌이당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·콘솔한당 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·전기자전거당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·물고기당 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·방송한당 ·PC튜닝한당 ·찰칵찍당 ·그림그린당 ·소풍간당 ·심는당 ·패스오브엑자일당 ·라즈베리파이당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·파도탄당 ·퐁당퐁당 ·테니스친당 ·테스트당 ·공대시계당 ·터치패드당 ·트윗당 ·가상화폐당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·와인마신당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

모두의공원

게임개발자 입장에서 본 PHP 36

2016-07-10 20:31:58 112.♡.66.96
게이머즈

아래에 풀스택 개발자가 본 PHP라는 글이 있어서 저도 한번 써볼까 합니다.

 

게임엔진을 처음 배울때 존카멕이 만든 퀘이크2 공개 소스를 가지고서 공부했습니다.

당시 대세인 D3D와 C++/COM을 놔두고 존카멕은 왜 C로 만들었냐, OPENGL로 만들었냐?

아무도 욕하는 사람이 없었습니다.

 

그사람의 실력이 대단하고, 만든 결과물이 성공적이었기 때문입니다.

그리고 그 누구하나 D3D API에 비해서 OPENGL API는 쓰레기라는 사람이 없습니다.

단지 윈도우 환경에서 D3D가 좀더 편하고 나은 관리를 지원해 주기 때문이었습니다.

C# 언어에 대해서도 좋은 언어이긴 하나 아직은 성능이 부족하다 라면서 항상 팩트를 제시합니다.

 

그런데 유독 이상하게 웹개발언어 만큼은 언어의 대전이 심각한거 같더라구요.

PHP는 누가봐도 성공적인 언어입니다. 지금 현재는 아닐지 모르겠지만 ASP, JSP에 비해서 성능도 뛰어나고 관리 비용도 절감되고

현재 모바일 게임업계에서 웹개발 언어로는 PHP가 구인이 가장 많습니다.

이건 규모가 작고 빠르고 인력이나 구축 비용이 절감되기 때문에 그렇습니다.

 

그렇지만 JSP는 대규모 웹개발시에 유리한건 맞습니다만 PHP가 그렇게 못하는 언어는 아닙니다.

이곳에서 혐오하는 사이트지만 일베저장소라는 사이트는 2CPU에서도 인정받는 제로보드XE를 튜닝을 잘해서 포탈사이트를 제외하고는 정말 대용량 헤비트래픽 운영으로 칭찬받는 사이트입니다.

그리고 페이스북도 HACK으로 컴파일되긴 했지만 시초는 PHP이고, 제로보드XE나 워드프레스등도 PHP입니다.

 

거지같은 소스를 유지보수 하기 싫으신 개발자님들의 고초는 알겠으나 돈이나오고 잘돌아가는 소스가 최고의 소스입니다.

그리고 그러한 결과물을 내었다면 퀘이크 소스처럼 페이스북, 워드프레스 등등 인정을 해주어야 하는 거구요.

 

PHP언어의 타입 캐스팅 문제는 그당시 컴공전공생이라면 누구나 배웠을 C언어를 기반으로 타입캐스팅해서 당연한 것으로 받아들여지는 거고, 최근의 동적 타입언어는 JAVA와 C#을 제외하면 어느 것이나 모호함을 가지고 있습니다.

 

저도 JSP로 JEUS와 웹투비에서 실무를 경험해 보았으나 여러가지 저에게는 불편한 언어였다고 개인적으로 생각합니다. JSP를 처음으로 하신분들은 당연할수 있지만요.

여러가지 내장된 문제점은 방법론이나 테스트를 잘하는 것이 옳은 방법이라 생각 됩니다.

그리고 차세대 등 신규를 할때는 적절한 언어를 선택하면 되겠지만, PHP로 된 AS-IS소스들도 그당시의 나름의 기준이 있어서 선택하셨다고 생각하시고 즐겁게 일하셨으면 좋겠습니다.

 

추가:

개인적으로 PHP가 가장 좋은점은 에러가 있을때 해당 PHP파일만 다운되며, PHP파일의 컴파일 없이도 hotswap이 되는 것이 가장 맘에 듭니다. 빠른 게임 운영환경에서 그보다 더 좋은건 없더라구요.

JAVA는 Ant 컴파일 거쳐서 급할때는 class 파일 바꿔치기도 해야되는데 바로바로 안될 때가 있었어요.

게이머즈 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [36]
maybus99
IP 221.♡.186.205
07-10 2016-07-10 20:32:40 / 수정일: 2017-04-30 23:15:38
·
닉네임 좋네요...

옛날에 정기구독 했었는데
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:34:20 / 수정일: 2017-04-30 23:15:38
·
저는 서점에서 간간히 사보고 있습니다.
ll토모ll
IP 110.♡.15.67
07-10 2016-07-10 20:34:08 / 수정일: 2017-04-30 23:15:38
·
네이버도 php기반이지요.. ㅎㅎ 언어에서 우열을 가릴 필요가 굳이 있나 싶어요~
from CV
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:34:38 / 수정일: 2017-04-30 23:15:38
·
네 맞아요.
그런데 전사적으로는 언어가 JAVA라더라구요.
lamp2k
IP 112.♡.212.98
07-10 2016-07-10 20:39:58 / 수정일: 2017-04-30 23:15:38
·
그거 바뀐게 10년전입니다.
spring3
IP 112.♡.86.185
07-10 2016-07-10 20:48:32 / 수정일: 2017-04-30 23:15:38
·
옛날에 PHP에서 JAVA로 다 넘어갔다죠..
아무래도 대규모 성능 위주로 갈려면 PHP는 한계가 좀 있어서..
쌍문동개장수
IP 114.♡.236.97
07-10 2016-07-10 20:36:13 / 수정일: 2017-04-30 23:15:38
·
+1
돈이나오고 잘돌아가는 소스가 최고의 소스죠.
저는 안쓰긴 합니다만, 훌륭한 레퍼런스가 수없이 쌓여있는 PHP가 평가절하되는 이유를 잘 모르겠습니다.
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 20:37:10 / 수정일: 2017-04-30 23:15:38
·
근데 이런 논리면 ACTIVE X 도 못 까죠.
PHP로 개발하는 개발자를 깔 필요는 없지만 언어의 단점은 까야지 서로 영향을 주면서 발전합니다. PHP도 이유 없이 발전 해 나가고 있는 건 아니지요.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:40:31 / 수정일: 2017-04-30 23:15:38
·
기타시와유출님//액티브x와는 다른 개념입니다.
php로 웹프로그램 한다고 해서 리눅스나 크롬에서 웹이 안보이진 않으니까요.
벡엔드는 웹접근성과는 상관없죠.
유저에게 전혀 해를 끼치지 않아요.
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 20:41:15 / 수정일: 2017-04-30 23:15:38
·
당연히 개념은 다르지요. 다만 그 당시에 최선이었다고 모든 걸 이해하려는 태도로 본다면 그렇다는 말입니다. 유저에게는 영향을 미치지는 않을지는 몰라도 레거시 PHP는 현재에 협업을 하려는 개발자에게 해를 끼칠 수 있는 요소를 많이 가지고 있으니까요. 그런 점이 가열차게 까이고 있으니 PHP도 여기까지 온 거지요
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:45:02 / 수정일: 2017-04-30 23:15:38
·
기타시와유출님//엑티브X는 당시에도 유저에게 해를 끼친점이 달라요.
그리고 잘돌아가는 클리앙을 php를 버리고 java로 간다고 해봅시다.
신기능을 달아야되는데 똑같이 새로 만들고 그다음에 신기능을 붙이면
그동안의 시간, 돈, 고객을 다 잃는데요. 경영자의 입장에선 어떨까요.
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 20:50:07 / 수정일: 2017-04-30 23:15:38
·
그래서 신기능을 한 몇 년만에 추가를 해야하는데 갈아 엎지는 못하고 뭔가 부분부분 수정을 해야합니다. 다른 사람이 와서 파악을 해야하는데 도저히 알아볼 수 없는 구조로 되어 있어서 손대다보니 더 개판이 되어 버리죠. 자바나 PYTHON은 SPRING이라든가 OOP를 기반으로한 MVC가 자리잡은지 꽤 오래되고, 아예 시작부터 장고나 플라스크를 쓰는 분위기지만, PHP는... 솔직히 저도 PHP를 주력이라고 생각하면서 JAVA쓰는 회사에 입사했는데 레거시PHP로 만든 코드는 도저히 뭘 손대라고 하면 손댈 엄두가 안 납니다.

옛날 PHP는 이런 것에 대해 염두에 두지 않고 언어를 설계했죠. CLASS나 INTERFACE 같은 구현도 미흡했고, 의존성을 관리할 수 있는 도구라든가 디버깅툴이라든가 CI에 대한 서포트도 이루어지지 않았습니다. 그나마 최근 몇 년동안 있던게 기껏해야 코드이그나이터...

그 부분을 부인해서는 안 된다고 생각합니다. 이러한 부분에 대해 지속적으로 이의제기가 되고 있으니 요즘은 모던PHP 방법론들이나 언어 자체의 개량이 이뤄지고 있지만요.

PHP개발자를 폄훼해서는 안된다는 점에서는 적극 동의합니다. 다만 PHP는 커뮤니티 내외에서 자체적으로 가열찬 비판이 타 언어 대비로도 좀 더 있었고 그 점은 인정해야 한다는 게 제 생각입니다. 장인이 도구 탓을 안 한다지만 모든 개발자가 존 카멕도 아니고, 장인 중에는 PHP의 단점을 인지하고 아예 HHVM에 HACK을 만드는 장인도 있으니까요
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:55:47 / 수정일: 2017-04-30 23:15:38
·
기타사외유출님

저도 자바를 6년 넘게 해온 자바개발자입니다만, 스프링이 자바 언어의 정식 스펙인가요?
외부 라이브러리라 프레임워크 아닌가요?
스프링이나 기타 프레임워크는 언어가 아닙니다.

지금은 언어를 비교 하고 있는것 같습니다.
그리고 자바언어 자체에서 디버깅이나 CI를 지원하는 것도 아닌것으로 알고 있습니다.
클래스나 인터페이스가 부실한것은 인정합니다만 외부 라이브러리나 프레임워크는 조금 다른 차원의 문제 같네요.
삭제 되었습니다.
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 20:59:59 / 수정일: 2017-04-30 23:15:38
·
PHP에서 스프링 같은 프레임워크가 그간에는 나올 수 없었고, PHP 커뮤니티에서 라라벨이나 컴포저 같은 지원이 늦을 수 밖에 없었던 이유가 PHP 의 설계와도 관련이 있고, 그렇기 때문에 개발생산성 측면에서도 여러 비판을 받았는데 그 부분을 아예 빼놓기도 웹개발의 측면에서는 곤란하다고 생각합니다.

그리고 SPRING이 전 세계적으로도 그렇고 특히나 한국에서 JAVA 기반 웹개발이라면 DE FACTO나 다름 없기도하고요. 그리고 지금 PHP는 OOP 지원이 부실하지 않습니다. 매우 잘 지원하고 있습니다.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 21:04:10 / 수정일: 2017-04-30 23:15:38
·
기타사외유출님
음 그렇군요 잘알겠습니다
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 21:10:56 / 수정일: 2017-04-30 23:15:38
·
예. 좋은 말씀 감사합니다.

저도 가끔씩은 제가 PHP빠인지 까인지 헷갈리긴한데 뿌리는 PHP라고 생각하는 개발자로서 PHP가 "대충 빨리 짜기엔 좋아요"를 벗어나기를 바라고 있습니다. 대충 빨리 짜기 좋다고 대규모로 만드는데 개판(...)이어야 할 이유는 없으니까요.

PHP 잘못된 디자인의 프랙탈이라는 글이 레거시 PHP를 수십가지로 탈탈 턴지도 5년은 된 거 같고... PHP 7도 이제 슬슬 나왔으니까 언젠간 자리를 잡기를 기원 해 봅니다.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 21:13:03 / 수정일: 2017-04-30 23:15:38
·
기타사외유출님
저는 고객이나 회사가 PHP로 만들어달라고 해서 아직은 5.6대로 개발하고 있습니다.
좋은 하루 되세요~
저는 하나무라로 떠납니다
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 21:15:43 / 수정일: 2017-04-30 23:15:38
·
게이머즈님 //
그러고보니 컴퓨터에서는 닉네임을 자동 표시해주질 않아서 습관적으로 그냥 줄줄이 달았네요. 저는 회사에서는 JAVA 위주로 하고 있고, 개인적으로는 PHP를 계속 이어서 하거나 node를 하고 있습니다 ㅎㅎ 근데 JAVA로 하다보니 옆자리에서 C# 으로 개발하는 사람과 비교를 해서도 또 JAVA의 단점이 보이는 걸 보면 모두 까기는 숙명인가 싶기도 합니다.

다만, 항상 가지고 있는 생각은 언어는 발전을 위해 비판을 할 지점이 있지만... 그 언어를 가져다 쓰고 있는 사람은 그냥 자기 상황에서 그걸 쓸 뿐이니까 두 개를 분리해야 한다는 정도? 좋은 주말 저녁 마무리하세요~
wiseguyli
IP 175.♡.193.111
07-10 2016-07-10 20:36:45 / 수정일: 2017-04-30 23:15:38
·
PHP가 얼마나 대중적인 언어인데, 왜 까내리는지 모르겠습니다.
삭제 되었습니다.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:39:21 / 수정일: 2017-04-30 23:15:38
·
jsp와 php가 왜 같은 비교대상이 아닌가요?
요즘은 전부 서블릿으로 개발하나요?
java/jsp = c#/asp.net 이렇게 개념적으로 이해하고 있습니다.
그냥 java라고 하면 swing gui개발도 java이며, android 개발도 java인데
웹개발하는 자바의 의미로 jsp로 포괄적으로 이해해주시면 감사하겠습니다.
삭제 되었습니다.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:47:22 / 수정일: 2017-04-30 23:15:38
·
채권자님
좋은정보 감사합니다.
제가 자바 웹사이트 개발할때만 해도 jsp밖에 없어서 그것밖에 몰랐습니다.
기타사외유출
IP 118.♡.98.235
07-10 2016-07-10 21:17:16 / 수정일: 2017-04-30 23:15:38
·
게이머즈님 //
자바 기반 웹개발이 VIEW단이 항상 취약한 거 같은데 최근엔 THYMELEAF 가 좀 뜨고 있는 것 같고 (스프링이 미니까...) 레거시한 JSP는 JSTL이랑 섞어서 꽤 쓰긴 쓰는 거 같고 VELOCITY는 점점 탈락해가는 분위기인 것 같습니다.
어부바
IP 118.♡.49.141
07-10 2016-07-10 20:37:02 / 수정일: 2017-04-30 23:15:38
·
PHP가 문제가 많아서 쓰레기라면
코볼도 같은 취급 받아 마땅하겠죠.
크리스
IP 110.♡.55.44
07-10 2016-07-10 20:37:30 / 수정일: 2017-04-30 23:15:38
·
진정한 장인은 도구를 탓하는 않는다죠.
#CLiOS
아범테크
IP 70.♡.90.113
07-10 2016-07-10 20:38:42 / 수정일: 2017-04-30 23:15:38
·
웹개발쪽이 언어선택에 있어서 다양해서 배틀 벌어지는 듯 합니다.
게임쪽이나 다른 분야는 어차피 특정 언어말고는 대안이 없는 경우가 많지 않나요?
레굴루스
IP 218.♡.9.17
07-10 2016-07-10 20:41:52 / 수정일: 2017-04-30 23:15:38
·
저희 프로젝트는 C++고 대부분이 C++이었지만 요즘은 모바일 게임이 대세라
서버 같은 경우에 다양한 언어로 합니다.
저희 회사에서 퍼블리싱 한 MMO중에는 자바도 있습니다.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:42:34 / 수정일: 2017-04-30 23:15:38
·
언어는 아니지만 API 배틀은 있지만 불꽃튀진 않아요.

GPGPU = CUDA vs OpenCL
3D API(윈도우 한정) = D3D vs OpenGL
윈도우 GUI = MFC vs Winforms vs WPF
모바일 엔진 = 유니티3D vs 코코스 vs 코로나 등등
서버OS = 윈도우 vs 리눅스 vs 유닉스
DB = 오라클 vs MSSQL vs MySQL 등등
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:46:07 / 수정일: 2017-04-30 23:15:38
·
레굴루스님//
클라이언트도 자바로 만들었나요 아니면 서버를 만드셨나요?
레굴루스
IP 218.♡.9.17
07-10 2016-07-10 20:47:56 / 수정일: 2017-04-30 23:15:38
·
게이머즈님 //
서버입니다. 저도 게임서버 개발하고 있고요.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 20:51:38 / 수정일: 2017-04-30 23:15:38
·
레굴루스님//
요즘 게임업계에서도 C#/JAVA로 서버 많이 짠다고 하더라구요.
저도 자바 nio 사용해서 만든 서버 하나 있어요.
레굴루스
IP 218.♡.9.17
07-10 2016-07-10 20:59:06 / 수정일: 2017-04-30 23:15:38
·
게이머즈님 //
C++, Java, Node.js, C#, Ruby 등 모바일 게임이 대세가 되니 언어도 다양하게 쓰이더라구요.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 21:00:14 / 수정일: 2017-04-30 23:15:38
·
레굴루스님//
모바일은 특성상 클라는 피쳐폰 개발자와 온라인 게임 개발자의 만남이
서버 개발자는 소켓 개발자와 웹개발자의 만남의 장이 되는것 같습니다.
The심이
IP 112.♡.189.194
07-10 2016-07-10 20:52:00 / 수정일: 2017-04-30 23:15:38
·
php는 소규모, 일정을 서둘러야 하는 프로젝트 등등에서
쓰기에 좋죠.
자바, 루비, php 해본 입장에서 지금 당장 웹하나 만들어줘 하고 부탁오면 php 선택합니다.
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 21:00:46 / 수정일: 2017-04-30 23:15:38
·
네 저도 그렇게 하고 있습니다.
php가 인력이 많아서 자바를 제외하고는 유지보수하기 편해요.
G-Shine
IP 175.♡.253.121
07-10 2016-07-10 21:05:49 / 수정일: 2017-04-30 23:15:38
·
사실 php랑 lua랑 비슷한 느낌이죠.
다 용도가 있는겁니다.
용도에 맞춰서 가야하는거죠
from CV
게이머즈
IP 112.♡.66.96
07-10 2016-07-10 21:07:50 / 수정일: 2017-04-30 23:15:38
·
저도 다시 lua 공부 해야겠네요.
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.