2009-12-20 2 views
0

모바일 장치 용 응용 프로그램이 작고 단순한 것으로 가정하면 은 웹 서비스에 부하가 많이 걸리는 경우가 많습니다.OO는 J2ME를 사용하는 모바일 애플리케이션 프로그래밍과 관련이 있습니까?

  • 모바일 애플리케이션 프로그래밍과 관련된 J2ME와 같은 프레임 워크 이상입니까?

  • 클라이언트 특정 커스터마이징에 대한 애플리케이션 특정 프레임 워크는 피할 수없는 오버 헤드가 아닐 수 있습니까? 특히 기존 프레임 워크 (J2ME) 자체가 이미 제공되는 경우 특히 그렇습니까?

  • 사용할 수있는 J2ME 프레임 워크가 있습니까? 스트럿츠 등?

+0

이 질문은 꽤 자주 다시 정렬됩니다. – Woot4Moo

+0

사과드립니다. Dav가 올 때까지 나는 정렬 작업이 더 필요하다는 것을 알았습니다. – Everyone

답변

3

객체 지향 프로그래밍은 특정 오버 헤드를 의미하지 않습니다. 그것은 단지 방법론 일뿐입니다. 느리고 불안정한 비 OO 프로그램을 만들 수있는 것처럼 빠르고 간단하게 OO 설계 방법론을 사용하는 프로그램을 만들 수 있습니다.

+0

두 번째 후속 조치로 질문이 업데이트되었습니다. – Everyone

0

그럼 J2ME은 Java이므로 OO입니다. OO 토지에 절차 적 방법으로 코드를 작성할 수는 있겠지만 지금은 사실이 아닙니다. OO를 파이썬으로 전환하고 싶지 않은 경우.

+1

Python은 Java와 마찬가지로 OO입니다. IIRC에는 자바처럼 객체가 아닌 원시 데이터 유형이 없습니다. –

+0

python은 스크립팅 언어이기도합니다. J2ME에 대해 언급하기로 결정 했으므로 공정한 비교가 될 것이라고 생각했습니다. Java가 컴파일 되었기 때문에 Python은 컴파일되지 않습니다. – Woot4Moo

1

물론 OO (결국 Java)를 사용하지만 J2ME에서는 공간과 메모리가 제한되어 있으므로 약간주의해야합니다. 클래스의 적절한 사용은 훌륭하지만, 다른 것들을 생성하는 팩토리를 생성하는 클래스를 가진 것들을 가지고 외출하지 마라. etc ... 그것은 실제로 내가 J2ME에 대해 좋아하는 것 : 당신은 배 밖으로 갈 수 없다. "건축 우주 비행사"물건들.

0

Knuth가 말했듯이 "조기 최적화는 모든 악의 뿌리입니다."

마찬가지로 J2ME라는 새로운 플랫폼이 등장하기 때문에 훌륭한 소프트웨어를 작성하고 글로벌 - 모든 절차 적 - 모든 단계로 돌아가는 방법에 관한 모든 것을 잊어 버리는 것은 이치에 맞지 않습니다.

물론 두뇌를 사용하고 데스크톱에서하지 않을 작업을 수행하지 마십시오 (예 : 개체의 스파이 런트를 생성하고 refs를 삭제하거나 잊어 버리는 등 java memleaks) 객체의로드를 무차별 적으로 산만하게 함). 그러나 공장을 만드는 공장을 만드는 공장은 소리가 나는 것처럼 어리석지는 않습니다. 특히 그 이유는 단위 테스트를 많이 작성하는 데 도움이되기 때문입니다. (그리고 네, J2ME에 대한 단위 테스트를 작성하십시오!) 012 WTA에 대한 응답으로 "건축 우주 비행사"또는 over-engineering이 몇 가지 대답에 응답합니다. 좋은 오래된 반복적 인 접근법 - 측정 할 수있을 정도로 삶이 단순화 될 때까지 복잡한 일을하지 마십시오.

요약하면, 내 생각에 J2ME와 Blackberry의 "메모리와 공간 제약"을 사용하면 창밖으로 좋은 감각을 발산하고 진부하고 탐색 할 수없는 소프트웨어를 작성하는 것입니다. 반복되는 방식으로 앱을 자주 테스트하면 실적이 불만족 스러울 때이를 확인하고 그 시점에서 적절한 조치를 취해야합니다. 그리고 기회는, 퍼포먼스 문제는 당신이 어리석은 짓을하고 추상화로 인한 것이 아니기 때문일 것입니다.

면책 조항 : 1999 년에이 책을 읽거나, 1KB의 mem 또는 JavaCard 용으로 작성하는 CLDC 1.0의 경우 위 내용을 모두 무시하십시오. 그러나 당신이 오늘의 어떤 기능 - 전화에서 실행중인 경우, 당신은 운이 좋다!

관련 문제