생성(Creational)패턴
추상팩토리 패턴
빌더 패턴
프로토타입 패턴
사용 예 ( 몬스터 리스폰, NPC 아이템 창 구현..)
장점 : 다수의 객체 생성 시 비용을 줄일 수 있다.
단점 : class들이 clone함수를 구현해야 함
실글톤 패턴
구조패턴
어뎁터
장점: 호완성 문제로 같이 쓸 수 없는 Class를 사용할 수 있다
Composite
장점: 전체 부분의 관계를 갖는 객체들 사이의 관계를 정의할 때 유용
ex) 컴퓨터를 중심으로 (모니터, 마우스, 스피커 .. )
decoator
장점: 기본 기능에 추가할 기능이 많은 경우 유용
Facade
장점: 복잡한 소프트웨어를 사용할 수 있도록 간편한 인터페이스 제공
Flyweight
비용이 큰 자원이 중복되어 생성될 가능성이 높은 경우 좋음
Proxy
장점:원하던 작업을 수행하면서 부가적인 서비스 실행에 적합 ,객체 접근방법 제어
행위패턴
Interpreter
언어의 문법과 해석방법에 용이
ex)MySql 구문분석
Command
장점: 실행될 기능을 캡슐화하여 재사용성 향상
Iterator
장점: 집합객체 요소 접근/순회방법
Mediator
장점: 여러 객체들 사이에서 통신의 복잡함을 감소시켜준다.
Observer
장점: 일대다 관계에서 수정된 값이나 목표달성과 같은 알림을 보내는 데 유용.
State
장점: 객체에 따라 상황을 달리 할 수 있는 상황에서 유용
Strategy
장점: 전략 알고리즘을 쉽게 변화시킬 수 있음
Visitor
데이터 구조와 연산을 분리하여 데이터 구조 변경없이 데이터 연산을 추가할 수 있음
2020년 4월 4일 토요일
sql Nosql - > OLAP OLTP -> TP 모니터 -> ORB
http://blog.naver.com/PostView.nhn?blogId=skygrab&logNo=30102437276
https://technet.tmaxsoft.com/upload/download/online/tmax/pver-20140117-
000058/getting-started/ch01.html
https://ko.wikipedia.org/wiki/%EA%B0%9D%EC%B2%B4_%EC%9A%94%EC%B2%AD_%EB%B8%8C%EB%A1%9C%EC%BB%A4
http://blog.naver.com/PostView.nhn?blogId=skygrab&logNo=30102437276
https://technet.tmaxsoft.com/upload/download/online/tmax/pver-20140117-
000058/getting-started/ch01.html
https://ko.wikipedia.org/wiki/%EA%B0%9D%EC%B2%B4_%EC%9A%94%EC%B2%AD_%EB%B8%8C%EB%A1%9C%EC%BB%A4
2019년 12월 11일 수요일
cocos2d를 다루던 중 Sprite에서 에러를 맞이 하고 있는 당신에게
void GameScene::onTouchMoved(Touch* touch, Event* unused_event)
{
Vec2 location = touch->getLocation();
flightMove(location);
}
void GameScene::flightMove(Vec2 location) {
if
(beganTouchVec2 != location) {
Vec2 v2 = location -
beganTouchVec2;
flight->setPosition(flight->getPosition()+ v2);
}
beganTouchVec2 = location;
}
이전 위치가 아니라 터치가 움직였다면 포지션을 바꿔주는 방법이었는데
요 moved 함수에 잘 못 넣었다가 크게 당했다.
조금만 생각해보면 flight객체가 지워지는 순간 애러가 발생하는 것을 ..
flight 객체가 지워지면 내가 작성했던 코드에서는 Gavaover 이미지가 띄워지고 모든 스케쥴이 중단된다. 리스너를 해체해줄까 이런 생각도 들었지만 조금 더 내 귀잖음이 나를 생각의 길로 이끌었다.
한참 고민하다가 Unity에서 하던 방식이 생각났다.
좋았어
update 스케쥴을 선언하여
void GameScene::update(float delta) {
flightMove(onTouchMovedV2);
}
이렇게 바꾸었다. 물론 .. onTouchMovedV2 저기 위에 있는 location Vec2 값이다.
중요한건 이 에러를 검사 당일날 봤다는 것 ..
고치지 못했다 후 .. 그래도 내 학점과 바꿔서 답을 찾아 냈다 !
우린 답을 찾을 것이다. 늘 그랬듯이
-인터스텔라-
누가 내 머리도 update 해주면 안되냐
2019년 11월 21일 목요일
EVE 1일차 -일기
EVE일기에 온 것을 환영한다.
사실 역기획 하려고 했으나 어디서부터 시작해야 할지 감도 안오는 게임이라
몇 일 더 해보고자 한다.
우선 튜토리얼을 플레이 하면서 꽤나 섬세한 게임이라는 것을 알 수 있다.
도킹 -> 모듈 장착
어쩌면 섬세함 보다는 함선간에 전투 발생 시 자유롭게 모듈을 교체한다면 전략이라는 요소에 마이너스가 될 수 있지 않을까.
(그림 1 -도킹시도)
도킹하면서 또 놀랐다. 이 거대한 함선은 함선이라 불러야 하나 ..
정거장이라 하게다.
요 정거장을 보자마자 섬뜩했다. 블소에서 이동하면서 이리저리 여기저기 상하좌우
쳐다보면서 맵을 음미하다 싶이 하는 나로써는 놀라운 광경이었다.
다른 튜토리얼을 위해 이동하려고 하는데 이 녀석은 무엇인가. 방금 위에서 설명했듯 나란 놈은 이런 것을 보고 그냥 갈 수 없다...
(그림 2 - 행성X)..행성 이름을 몰라서 X라 하였다.
인상 깊었던건 대적점 처럼 생긴 물체가 쉴새없이 변화된다는 것 보자마자 행성안으로도 들어가고 싶다는 생각이 들었다. (가능한지는 모르겠다..시도를 안해봐서 )
자 이제 구경은 그만하고 워프를 타서 날라 간 곳에는 두둥탁!

(그림 3 )
귀여운 적이 존재했다. 전투 조작법이 간단해서 금방 익힐 수 있었다. 어쩌면 너무
심플해서 전투 중에는 어떤 퍼포먼스를 낼 수 있을까 궁금했다. 전투중에 도탄 되는 것을 보고 월오탱이 가장 먼저 떠올랐고 도탄에 울고 웃을 날이 내게 올까 무섭다.ㅂㄷㅂㄷ
퀘스트를 마치고 정신나간 짓을 잠깐 했었는데 애드 아스트라(2019)를 재미있게 본 나란 놈은 애드 아스트라의 브레드 피드를 경험하고자 워프를 중지하고 화면을 쳐다보기 시작했다.

(그림 4)
686,654,226,437.85 m(미터) 내가 아무리 정신 나간 놈이라 해도
나의 함선 속력 650 m/s...
대략 33년이라는 시간을 깨닫고 내 자신을 반성했다.

(그림5)
나란놈은 겨우 30분밖에 쳐다볼 수 밖에 없는 난 역시나 오늘도 근성이 부족했다.. 용감한 모험자가 있다면 해보시라.
계속해서 튜로리얼 ..이것 저것 보느라 플레이 타임이 꾸준하게 늘어간다.

(그림 6)
이펙트가 정말 화려하다. 분명 튜토리얼 초기 잡몸을 때려 잡았는데 이런 연출을 해주니 게임의 내공이 상당하는 것을 증명해주는 것 같다.
그리고 아직 난 할 일이 많다.
정리하자면 일기와 같이 게임에서 있었던 이야기를 잠깐 적어봤다. 그리고 플레이 하면서 느낀건 나란 놈을 제외한 뉴비들은 초반이 지루하다고 느낄 수 있을지도 모르겠는 것이다.
그런 분들은 좀 더 근성을 가지고 플레이 해보면 재미있지 않을까..
물론 나란 놈이 아직 할 말은 아니다
다시 돌아ㅇ겠다
이만
간다
사실 역기획 하려고 했으나 어디서부터 시작해야 할지 감도 안오는 게임이라
몇 일 더 해보고자 한다.
우선 튜토리얼을 플레이 하면서 꽤나 섬세한 게임이라는 것을 알 수 있다.
도킹 -> 모듈 장착
어쩌면 섬세함 보다는 함선간에 전투 발생 시 자유롭게 모듈을 교체한다면 전략이라는 요소에 마이너스가 될 수 있지 않을까.
(그림 1 -도킹시도)
도킹하면서 또 놀랐다. 이 거대한 함선은 함선이라 불러야 하나 ..
정거장이라 하게다.
요 정거장을 보자마자 섬뜩했다. 블소에서 이동하면서 이리저리 여기저기 상하좌우
쳐다보면서 맵을 음미하다 싶이 하는 나로써는 놀라운 광경이었다.
다른 튜토리얼을 위해 이동하려고 하는데 이 녀석은 무엇인가. 방금 위에서 설명했듯 나란 놈은 이런 것을 보고 그냥 갈 수 없다...
(그림 2 - 행성X)..행성 이름을 몰라서 X라 하였다.
인상 깊었던건 대적점 처럼 생긴 물체가 쉴새없이 변화된다는 것 보자마자 행성안으로도 들어가고 싶다는 생각이 들었다. (
자 이제 구경은 그만하고 워프를 타서 날라 간 곳에는 두둥탁!
(그림 3 )
귀여운 적이 존재했다. 전투 조작법이 간단해서 금방 익힐 수 있었다. 어쩌면 너무
심플해서 전투 중에는 어떤 퍼포먼스를 낼 수 있을까 궁금했다. 전투중에 도탄 되는 것을 보고 월오탱이 가장 먼저 떠올랐고 도탄에 울고 웃을 날이 내게 올까 무섭다.ㅂㄷㅂㄷ
퀘스트를 마치고 정신나간 짓을 잠깐 했었는데 애드 아스트라(2019)를 재미있게 본 나란 놈은 애드 아스트라의 브레드 피드를 경험하고자 워프를 중지하고 화면을 쳐다보기 시작했다.
(그림 4)
686,654,226,437.85 m(미터) 내가 아무리 정신 나간 놈이라 해도
나의 함선 속력 650 m/s...
대략 33년이라는 시간을 깨닫고 내 자신을 반성했다.
(그림5)
나란놈은 겨우 30분밖에 쳐다볼 수 밖에 없는 난 역시나 오늘도 근성이 부족했다.. 용감한 모험자가 있다면 해보시라.
계속해서 튜로리얼 ..이것 저것 보느라 플레이 타임이 꾸준하게 늘어간다.
(그림 6)
이펙트가 정말 화려하다. 분명 튜토리얼 초기 잡몸을 때려 잡았는데 이런 연출을 해주니 게임의 내공이 상당하는 것을 증명해주는 것 같다.
그리고 아직 난 할 일이 많다.
정리하자면 일기와 같이 게임에서 있었던 이야기를 잠깐 적어봤다. 그리고 플레이 하면서 느낀건 나란 놈을 제외한 뉴비들은 초반이 지루하다고 느낄 수 있을지도 모르겠는 것이다.
그런 분들은 좀 더 근성을 가지고 플레이 해보면 재미있지 않을까..
물론 나란 놈이 아직 할 말은 아니다
다시 돌아ㅇ겠다
이만
간다
대표적인 4형식 동사 ,5형식
1형식동사
arrive at
account for 설명하다
agree on, to ,with ~에 동의하다
comply with 준수하다
contribute to
consist of 구성되다
dispose of 버리다
deal with 다루다
enroll in ~에 등록하다
fill out 작성하다
interfere with 간섭하다
inquire about ~에 관해 문의하다
participate in 참여하다
proceed with (일을)진행하다
proceed to ~로 가다
result in ~의 결과를 초래하다
result from ~로부터 결과가 초래되다
refer to 조회하다 ,참고하다
register for ~을 위해 등록하다
respond to (=reply ,react)
rely on, depend on 의존하다
subscribe to 구독하다
참고
There는 부사다
도치든 뭐든 주어 동사가 와야하는데
There is a house ! 2형식이 아니다
3형식동사 뒤에 바로 사람목적어가 나올 수 없다..
전치사와 함께 등장 해야한다.
4형식 동사 - 모든 4형식 동사는 3형식으로 사용가능하다
give
grant
send
offer
bring
assign 배치하다
award
teach
특수 4형식
inform ,notify ,assure 안심시켜주다 ,remind ,tell ,advise
반드시 2번째 목적어 자리에 명사가 아닌 명사절이 온다 항상 사람목적어가 있는지 확인!!
특수 4형식에서 3형식동사는 of+n 짝꿍으로 등장한다.
I was imformed that we had to go //수동태 전환시 that절이 내려온다 .
5형식
5형식에서 목적보어 -> 명사는 동격보어 ,형용사는 상태설명 to 부정사는 동격 or 상태설명
keep
find
show
prove
consider
deem 간주하다
elect
want
force 강요하다
leave 남겨두다
name
목적보어에 오직 to 부정사를 사용하는 동사
persuade
encourage
require
enable
expect
request
permit
Allow (4형식으로도 쓰임 )
arrive at
account for 설명하다
agree on, to ,with ~에 동의하다
comply with 준수하다
contribute to
consist of 구성되다
dispose of 버리다
deal with 다루다
enroll in ~에 등록하다
fill out 작성하다
interfere with 간섭하다
inquire about ~에 관해 문의하다
participate in 참여하다
proceed with (일을)진행하다
proceed to ~로 가다
result in ~의 결과를 초래하다
result from ~로부터 결과가 초래되다
refer to 조회하다 ,참고하다
register for ~을 위해 등록하다
respond to (=reply ,react)
rely on, depend on 의존하다
subscribe to 구독하다
참고
There는 부사다
도치든 뭐든 주어 동사가 와야하는데
There is a house ! 2형식이 아니다
3형식동사 뒤에 바로 사람목적어가 나올 수 없다..
전치사와 함께 등장 해야한다.
4형식 동사 - 모든 4형식 동사는 3형식으로 사용가능하다
give
grant
send
offer
bring
assign 배치하다
award
teach
특수 4형식
inform ,notify ,assure 안심시켜주다 ,remind ,tell ,advise
반드시 2번째 목적어 자리에 명사가 아닌 명사절이 온다 항상 사람목적어가 있는지 확인!!
특수 4형식에서 3형식동사는 of+n 짝꿍으로 등장한다.
I was imformed that we had to go //수동태 전환시 that절이 내려온다 .
5형식
5형식에서 목적보어 -> 명사는 동격보어 ,형용사는 상태설명 to 부정사는 동격 or 상태설명
keep
find
show
prove
consider
deem 간주하다
elect
want
force 강요하다
leave 남겨두다
name
목적보어에 오직 to 부정사를 사용하는 동사
persuade
encourage
require
enable
expect
request
permit
Allow (4형식으로도 쓰임 )
2019년 6월 4일 화요일
java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)
at org.json.JSONTokener.nextValue(JSONTokener.java:94)
at org.json.JSONObject.<init>(JSONObject.java:159)
at org.json.JSONObject.<init>(JSONObject.java:176)
at com.anlyn.project.MailContentsFragment$BackgroundTaskDeleteMail.onPostExecute(MailContentsFragment.java:294)
at com.anlyn.project.MailContentsFragment$BackgroundTaskDeleteMail.onPostExecute(MailContentsFragment.java:253)
이런 에러가 나온다면
닝겐이여 .. php에서 받아오는 값이 이상하다네
php 등짝을 찾아보자 ..
at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)
at org.json.JSONTokener.nextValue(JSONTokener.java:94)
at org.json.JSONObject.<init>(JSONObject.java:159)
at org.json.JSONObject.<init>(JSONObject.java:176)
at com.anlyn.project.MailContentsFragment$BackgroundTaskDeleteMail.onPostExecute(MailContentsFragment.java:294)
at com.anlyn.project.MailContentsFragment$BackgroundTaskDeleteMail.onPostExecute(MailContentsFragment.java:253)
이런 에러가 나온다면
닝겐이여 .. php에서 받아오는 값이 이상하다네
php 등짝을 찾아보자 ..
피드 구독하기:
글 (Atom)