어플개발 자바 공부 관련.

어플개발 자바 공부 관련.

작성일 2017.02.22댓글 5건
    게시물 수정 , 삭제는 로그인 필요

현재 직장을 다니며 퇴근 후 어플 개발을 목표로 자바 공부중입니다.
GUI등 몇 가지 빼놓고

쓰레드, 파일 입출력 등 까지
책 한 권은 본 상태입니다.

전체적으로 한 번 훑어 봤을 뿐이지 실제 코드 작성이나 응용 등
실무에서 어떻게 쓰이는지 감도 못잡겠습니다.

여기에 C언어 까지 병행하려니 도저히 시간도 안되겠고,
포인터, 더블 포인터 나오기 시작하면서 많이 막히네요.


1. 자바 하나를 끝내고 안드로이드 개발까지 어느정도 학습을 한 뒤,
C언어를 진행하는게 좋을지요.

2. 자바의 학습 정도를 알고 싶습니다. 실제 실무에선 코드를 전부 짜기 보다는
   Github등에서 많이 응용하는걸로 아는데요. 
   저는 일단 간단한 앱을 목표로 공부중이다보니. 
   자바의 공부수준을 어느정도로 잡아야 할지 감이 안잡히네요.
   자바를 다시 처음부터 복습 해볼 생각인데. 
   
   어느 정도의 깊이로, 어느 파트를 집중적으로 공부해야할지 조언 부탁드립니다.

3. 자바 ▶ JSP ▶ 데이터 ▶ 안드로이드 스튜디오 순으로 공부하는걸로 아는데요.
   이 같은 순서로 공부를 진행하면 될지요.
   "자료구조"를 병행하라고 하시는분들이 계시는데, 
   자료구조는 C언어가 어느정도 바탕이 되어야 학습이 가능한걸로 알고있습니다;;;
   C도 책 한권정도 얇게 훑어보긴 했지만 정말 공부량이 부족합니다. 
   이 상황에서 자료구조도 
   안드로이드까지 학습을 마친뒤 진행하는게 좋을지요.



profile_image 익명 작성일 -

제대로 알아보시는게 좋을거 같아요

여긴 홍보글이 너무 많아요ㅠ

profile_image 익명 작성일 -

1. C언어를 반드시 배워야 하는 것은 아닙니다. 자바 언어의 문법, 안드로이드 API, 안드로이드 스튜디오 사용법에 집중하세요.

 

2. 어디서 잘못된 정보를 얻었는지 모르지만, 저작권 문제도 있고 자존심 문제도 있어 서비스로 제공되고 지속 가능한 앱이라면, 하나에서 열까지 직접 코드를 작성하지 남의 코드를 가져다 사용하지 않습니다.

 

코드를 전부 짜든 남의 코드를 가져다 사용하든 자바만 공부해서는 할 수 없고 프로그래밍을 체계적이고 전문적으로 배워야 할 수 있습니다.

 

3. 위에서도 말씀드렸지만, 프로그래밍 언어, 라이브러리, 언어 프로그램들 같은 개발 도구 사용법만을 배운다고 어플을 만들 수 있는 것은 아닙니다. 열거한 것들은 개발 도구들일 뿐입니다.

 

자료구조는 어플같은 프로그램을 만드는 데 매우 중요한 분야입니다. 자료구조를 배우는 데 C언어가 반드시 필요한 것이 아닙니다. 의사코드로 개념들을 설명하는 자료구조 책을 사용하시면, C언어 하나도 몰라도 됩니다. 그리고 자료구조를 어렵게 생각힐 필요 없습니다. 자바를 배울 때 배열을 배울 것입니다. 배열 자체가 자료구조입니다.

 

어플같은 프로그램을 만들고자 프로그래밍을 공부하신다면, 프로그래밍을 체계적이고 전문적으로 배우세요. 그래서 창의적인 혹은 창조적인 문제 해결 능력을 갖추도록 하세요. 왜냐하면, 어플을 만드는 일인 프로그래밍이란 컴퓨터를 이용한 문제 해결 과정이기 때문입니다.

 

프로그래밍을 공부하는 데는 공부하는 방법이 매우 중요합니다. 공부하는 방법부터 배우고 시작해 보세요. 그렇지 않지만, 우리 나라에서는 대부분 C언어부터 배우고 자바를 배우라고 해서 C언어나 자바를 배우다 보면, C언어나 자바 책에 적힌 내용은 그럭저럭 이해되지만, 장마다 제시되는 문제를 풀어 C언어나 자바로 프로그램을 만들고자 하면, 어떻게 해야 하는지 모르겠고, 잘되지 않습니다. 그러면 답지를 구해 코드만 외우고 넘어 갑니다. 망하는 지름길입니다.

 

C언어나 자바 책에 적힌 내용은 C언어나 자바의 문법이고, 장마다 제시되는 문제를 풀어 C언어나 자바로 프로그램을 만드는 일은 프로그래밍입니다. 따라서 C언어나 자바의 문법만 배운다고 프로그래밍을 할 수 있는 것은 아닙니다. 그래서 C언어나 자바의 문법을 배울 것인지 아니면 C언어나 자바로 하는 일인 프로그래밍을 배울 것인지를 먼저 명확하게 하세요. 공부하는 방법이 다르기 때문입니다. 공부하는 목표에 맞게 공부하는 방법을 배워 공부하면 보다 쉽고 재미있게 배울 수 있습니다.

 

공부하는 방법도 설명드려 보겠습니다. 참고해 보세요.


C언어나 자바를 보다 쉽고 재미있게 배우고, 스스로 문제를 풀어 C언어나 자바로 어플같은 프로그램을 만들고자 한다면, 먼저 프로그래밍을 배우세요. 문제를 풀어 프로그램을 만드는 일인 프로그래밍을 먼저 체계적이고 전문적으로 배우세요. 그래서 창의적인 혹은 창조적인 문제 해결 능력을 갖추도록 하세요. 왜냐하면, C언어나 자바로 하는 일인 프로그래밍이란 컴퓨터를 이용한 문제 해결 과정이기 때문입니다.

 

프로그래밍이 무엇인지 간략하게 봅시다. 프로그램으로 만들고자 하는 것을 전산(컴퓨터) 분야에서는 문제라고합니다. 그리고 프로그램은 데이티와 명령어로 구성됩니다. 그래서 문제를 풀어 프로그램을 만들고자 한다면, 문제 관련 데이터들을 어떠한 기억장치에 어떻게 저장하고 어떻게 쓰고 읽을지를 결정하고(자료구조 설계), 어떠한 명령어들을 어떠한 순서로 몇 번씩 실행시킬지를 결정하여(알고리듬 설계), 이렇게 설계된 자료구조와 알고리듬을 C언어나 자바로 문법에 맞게 변환하여(구현) 어플같은 프로그램을 만드는 일이 프로그래밍입니다.

 

먼저 문제를 풀어 알고리듬과 자료구조를 만드는 방법을 배우세요. 그리고 C언어나 자바로 알고리듬과 자료구조로 프로그램을 만드는 방법을 배우세요. C언어나 자바로 알고리듬과 자료구조로 프로그램을 만들 때 필요한 C언어나 자바의 문법적인 기능을 이제 C언어나 자바 책에서 찾아서 읽어 보고 적용하는 방식으로 공부하세요. 난이도를 높여 가면서 많은 문제를 풀어 프로그램을 만들다 보면, 스스로 문제를 풀어 프로그램을 만들 수 있고, C언어나 자바도 머리로 기억하는 것이 아니라 몸으로 기억되어 있을 것입니다. 그래서 숨쉬는 것처럼, 걷는 것처럼 자연스럽게 C언어나 자바로 프로그램도 만들 수 있을 것입니다.

 

알고리듬과 자료구조를 만드는 방법을 배우라고 해서 시중에 출간된 알고리듬과 자료구조 책들을 사서 이미 만들어져 책에 실린 정렬과 검색 알고리듬, 배열, 연결리스트, 트리, 그래프, 스택, 큐들을 외우지 마십시오. 정렬과 검색 알고리듬, 배열, 연결리스트, 트리, 그래프, 스택, 큐들을 만들 수 있도록 알고리듬과 자료구조를 만드는 방법을 먼저 배우라는 것입니다.

 

인터넷에서 사용되는 논리가 "C언어를 알아야 프로그램을 만들 수 있으므로 C언어를 먼저 배우라"고 합니다. 이러한 논리가 우리나라 영어 교육이나 학습에서도 적용되었지요.  우리나라 영어 교육이나 학습은 영어의 문법부터 시작합니다. 그렇게 해서 중학교, 고등학교 심지어 대학교까지 똑같은 방식으로, 영어 문법을 외우는 방식으로 공부하게 됩니다. 그렇게 십 수년을 하지만 헤밍웨이의 유명한 소설 책 한 권 제대로 읽지 못하고, 두 세쪽 되는 에세이 하나 제대로 작성하지 못하고, 지나가는 외국인과 담소한 번 제대로 나눌 수 없지 않습니까?

 

"C언어를 알아야만 프로그램을 만들 수 있다"는 논리라면, 영어의 문법을 공부했다면, 영어 소설책도, 에세이도 회화도 가능해야 하지 않습니까? 어느 분야에서 성공하려면, 10000시간 정도 분야에 집중하면 된다는 이론이 있지 않습니까? 우리나라에서 영어 공부에서는 적용되지 않는 이유는 무엇일까요? 교육과 학습에 문제가 있다는 것입니다.

 

그래서 요사이는 영어 교육과 학습이 매우 실용적으로 바뀌고 있습니다. 문법을 암기하는 것이 아니라, 듣기와 말하기로 바뀌고 있습니다. 듣기와 말하기할 때 필요하면 문법을 공부하고 적용하는 방식으로 말입니다. 그래서 좋은 결과를 내고 있습니다.


프로그래밍 교육과 학습도 바뀌어야 합니다. 문법위주 교육과 학습보다는 문제 해결 중심의 교육과 학습으로 바뀌어야 합니다. 프로그래밍을 공부하는 방법을 배우세요.


C언어나 JAVA언어같은 프로그래밍 언어와 프로그래밍을 체계적이고 전문적으로 공부하는 방법도 설명드려 보겠습니다. 참고해 보세요.

 

프로그래밍은 우리가 생활하는 데 있어 부닥치는 복잡한 문제를 새로운 생각으로 풀어 프로그래밍 언어로 컴퓨터가 처리하도록 하는 프로그램을 만들어 보다 편하게 살 수 있는 세상을 만드는 일입니다. 그래서 어렵습니다. 그렇지만 내가 생각한 프로그램을 만들고 세상 사람들이 사용한다면 엄청난 성취감과 자부심을 느낄 수 있습니다.

 

이러한 프로그래밍을 하고자 한다면 다음과 같은 최소한의 능력을 갖추어야 합니다.

(1) 문제 해결 능력

(2) 프로그래밍 언어 구사 능력

(3) 개발 툴 사용 능력

 

이 중에서 가장 중요한 것은 문제 해결 능력입니다. 문제를 해결할 수 없으면, 프로그래밍 언어 구사 능력도 개발 툴 사용 능력도 아무 소용이 없습니다. 문제 해결 능력은 많은 문제를 풀어 프로그램을 만들어 봄으로 해서 나만의 문제 해결 방법을 만들었을 때 갖추어 지는 것입니다. 따라서 프로그래밍을 배우고자 한다면 체계적이고 전문적인 학습을 해야 합니다. 그러면 누구나 프로그래밍을 할 수 있습니다.


프로그래밍 언어나 프로그래밍을 배울 때는 C언어나 자바같은 프로그래밍 언어만 배우지 마시고, C언어나 자바로 하는 일인 프로그래밍을 먼저 공부하세요. 프로그래밍 언어만 배운 사람이면 프로그래밍 언어가 배우기 어렵다고 하고, 어려운 프로그래밍 언어를 한 권 내지 두 세권 책으로 공부를 마친 후에도 문제를 스스로 풀어 배운 프로그래밍 언어로 프로그램을 만들려고 하면 어디서 부터 시작하여 어떻게 해야 하는지가 막막하다고 합니다.

 

왜 그럴까요? 프로그래밍 언어 책에 적힌 프로그램을 이해하기 위해서는 프로그래밍을 배워야 하는데 그렇지 않고 프로그래밍 언어를 배우고자 하기 때문입니다. 프로그래밍 자체는 어렵습니다. 프로그래밍은 문제를 풀어 컴퓨터가 처리하도록 하는 프로그램을 만드는 일이기 때문입니다.

 

프로그래밍 언어 책에서는 문제를 풀어 프로그램을 만드는 것을 설명하지 않고, 문제를 풀어 해결책(알고리듬)을 만든 후에 컴퓨터가 처리하도록 하는 프로그램을 만들 때 프로그래밍 언어가 언제, 어떻게 적용되는지만을 설명합니다. 그래서 프로그래밍과 프로그래밍 언어를 재미있게 공부하고자 한다면 체계적이고 합리적인 학습을 해야 합니다.


프로그래밍 언어를 배우기 전에 프로그래밍 언어로 하는 일인 프로그래밍을 먼저 공부하세요. 프로그래밍이 무엇인지, 어떻게 하는지, C언어같은 프로그래밍 언어가 언제, 어떻게 사용되는지 그리고 프로그램이 어떻게 작동하는지를 공부하세요. 또한 이러한 개념과 원리를 바탕으로 문제를 풀어 프로그램을 만드는 절차를 배우세요. 이러한 내용을 배우고자 하면, 다음 책들을 참고해 보세요.

 

책들은 "이렇게 하면 나도 프로그램을 잘 만들 수 있다(나프잘)" 시리즈입니다.

 

이렇게 프로그래밍을 이해했다면, 프로그래밍 언어를 배우세요. 무작정 프로그래밍 언어 책을 사고 동영상강의를 보면서 책에 적혀 있는 프로그램을 아무 생각없이 입력해서 실행시켜 보고 머리를 끄덕이고 외우는 방식보다 쉽게 재미있게 프로그래밍 언어를 배울 수 있습니다. 왜냐하면 왜 프로그래밍 언어를 배워야 하는지를 명확하게 이해했고, 프로그래밍 언어 책에 나온 프로그램이 어떻게 작성되었는지를 이해할 수 있고, 마지막으로 프로그래밍 언어 책에 제시되는 문제를 풀어 프로그램을 만들 수 있기 때문입니다.

 

C언어를 공부하고자 한다면 다음 책을 참고해 보세요.
책은 "C를 배우면 함수를 잘 만들어야 한다"입니다.

 

문법만 설명하는 것이 아니라 문제를 풀어 프로그램을 만들 때 C언어가 언제, 어떻게 적용되는지를 설명합니다. 특히 책의 처음부터 끝까지 C언어를 배우면 반드시 만들 수 있어야 하는 함수를 만들어서 사용하는 방법을 설명합니다.

 

카페 "프로그래밍을 배우자"에서 게시글과 동영상강의로 프로그래밍이 무엇인지, 어떻게 하는 것인지 그리고 C언어나 JAVA언어가 언제, 어떻게 사용되는지를 확인해 보세요. 그리고 프로그래밍과 C언어나 JAVA언어를 어떻게 배워야 할지를 생각해 보고 시작하세요. 그래서 시행착오를 줄이세요.


독학을 하신다면 책을 읽는 방법을 바꾸세요. 책을 볼 때 바로 정독을 하지 마시고, 빠른 속도로 전체 내용을 훓어 보는 방식으로 여러 번 보고, 정독을 하십시오. 왜냐하면 모든 내용은 질문자 님에게 새로운 내용입니다. 따라서 어려울 수 밖에 없습니다. 그래서 최소한 책에 어떠한 내용이 담겨 있는지와 자주 사용되는 용어(혹은 개념)에는 익숙해야 정독을 할 수 있지 않습니까? 책의 줄거리나 용어에 익숙하기 위해서 빠른 속도로 전체 내용을 훑어 보는 방식으로 먼저 읽어 보시라고 권하는 것입니다.


좋지 않은 프로그래밍 공부 방법이지만, C언어나 자바의 문법만 배우고자 한다면, 책을 훑어보기로 처음부터 끝까지 빠르게 3-4회 읽어 어떠한 내용인지, 자주 사용되는 용어들에 익숙해 지도록 하세요. 내용이 파악되고, 용어들에 익숙해지면, 처음부터 책에 실린 코드도 컴퓨터에 입력해 보면서, 컴퓨터가 없으면 공책에 적어 보면서 어떠한 기능이 언제, 어떻게 사용되는지를 외우세요. 이때는 "왜 이렇게 할까", "어떻게 작동할까"라는 생각들은 하지 마시고, 외우세요.

profile_image 익명 작성일 -

자료구조배우셔야합니다.


C, 자료구조, JAVA, JSP, C++  이 다섯가지 꼭 배우셔야 어플 손쉽게 만드실 수 있습니다.


명심하세요.


C언어, JAVA강의 무료로 보실 수 있는 카페 주소 알려드릴테니 참고해보시고


연락주시고 싶으시면 쪽지나 메일 주시면 답변해드리겠습니다

profile_image 익명 작성일 -

안녕하세요.

대한민국 1호 벤처기업 비트컴퓨터에서 운영하는 소프트웨어 개발자 양성 전문기관 
비트교육센터 지식파트너 담당자입니다.  

어플 개발을 목표로 자바 언어를 공부하고 계신 상황인데요.
기본적으로 자바 언어부터 공부하기 시작하신 경우라면 
굳이 C언어를 추가로 공부하지 않으셔도 무방합니다.
현재의 JAVA 언어 공부를 끝내신 이후에 안드로이드 스튜디오 공부로 넘어가시면 됩니다.

실무에서 깃허브, 구글링, 오픈소스 및 API 활용 등 다양한 부분에서
소위 가져다 쓰는 부분이 많은 건 사실이지만
기본적인 구현 능력을 갖춘 상태에서 갖다 써야 의미가 있습니다.
아무 것도 모르는 상태에서 가져다 쓰는 건 의미가 없지요.

개발하고자 하는 어플의 내용에 따라 다르기는 하지만
어플 개발의 폭을 넓히기 위해서는 기본적으로 웹개발에 대한 지식이 전반적으로 필요합니다.
어플에 따라서는 모바일 웹 형식으로 구현하는 경우가 적합한 경우도 존재하고
순수하게 클라이언트 기기 내에서만 동작하는 네이티브 어플은 많지 않으니까요.

기본적으로 웹사이트 개발에 대한 공부를 병행하시면서
조금씩 목표 웹사이트를 일정 부분 카피할 수 있을 정도까지 연습을 꾸준히 해 보시면
좋을 것 같습니다.

자료구조는 사실 어떤 언어를 바탕으로 공부해도 무방합니다.
다만 대부분의 자료구조 수업이 C언어를 바탕으로 이루어지기 때문에 생긴 오해이기도 한데요.
자료구조를 알면 개발 능력을 심화하는 데에 일정 부분 도움이 되지만
이 부분은 일정 부분 선택사항이라 말씀드리고 싶네요.

프로그래밍 공부 및 개발자 취업에 대해 더 궁금한 점 있으시면
일대일 질문, 쪽지, 댓글 등을 이용하시거나
제 지식in 프로필을 참고하여 추가 문의 바랍니다. 

감사합니다.




profile_image 익명 작성일 -

안녕하세요 :)


우선 질문자님 어플 개발할 때 C많이 안쓰는데 공부 왜 하시는거에요?


누가 C해야 한다고 한건가요?


어플 하실거면 JAVA제대로 해서 JSP랑 안드로이드 쪽 공부 하시는건데


굳이 힘들게 C를 혼자 하고 계신 이유가...


지금 공부 하시는거요~ 취업때문인거에요?


아니면 그냥 만들어보고 싶어서 그러신거에요?


제대로 공부 하셔야 할 것 같은데


공부 하는 순서나 방법같은 것도 좀 제대로 들으셔야 할 것 같네요..


어플만 하나 딱 만들어보고 말거면 자료구조는 또 왜 하시는거에요?....


그 분야로 취직하실거에요?


좀 궁금한 점이 많네요..


제가 먼저 연락을 드릴 수가 없으니 아래 네임카드 카톡 아이디 이용해서 연락 한번 주세요~

자바어플개발 공부학원.

... 빨리 자바어플개발공부할 수 있는 학원입니다. 만들고자하는 앱이 무엇인지에... 안드로이 자바어플개발 학원과 관련하여 교육문의가 필요하시면 아래의 번호로...

자바인강 보고 어플개발독학

... 계시면 공부방법 좀 알려주세요~ (자바인강 보고 어플개발독학) 자바인강 보고... 관련업종 취업준비 하기전 자격증은 무조건 필수조건 입니다. 그래서 강좌을 통하여...

개발 자바 자바스크립트 공부 관련 질문

현직 개발자님들 어플 개발 시 안드로이드 스튜디오 (자바or코틀린) 과 리액트 네이티브... 네이티브도 공부하면 좋을까요? 아니면 한 곳을 파는게 좋나요? 아니면 코틀린을...

어플 개발쪽 취업을 위해 자바공부하...

취업을 안드로이드 어플 개발쪽으로 하고 싶어 자바공부하려고 하는데 어떻게... 추가로 질문하실 점 있으시면 쪽지로 질문 주세요~ 일단은 참고하실수 있도록 관련학원...

안드로이드 어플 개발 공부 입문

... 그래야한다면 자바 입문 책과 안드로이드 개발 책 추천 부탁드립니다. 안드로이드... 안드로이드 어플 개발관련 공부를 시작하시면 될거같습니다!! 하지만 궁극적으로...

어플개발 공부하려면

... 안드로이드 어플개발을 위해 공부해야할 순서를 알고 싶습니다. 어느 글에서 보니 C -> 자바 -> 리눅스 -> JSP... 안드로이드개발관련에서는 자바의 대하여 능숙할게...

안드로이드 어플 개발자바언어를...

... 만들때도 공부 하나도 안하고 인터넷에서 하나하나 검색해가면서 거의 배웠는데... 하여튼 어플 개발자바언어를 꼭 배워야 가능하다는 것을 좀 알고 싶네요...

안드로이드 어플 개발공부하고 싶어요

... 안드로이드 어플개발하려면 자바를 먼저 공부해야 한다는데.. 질문 드릴께요. 1.... 2.안드로이드 어플 개발 하고싶은데 관련 학원들 홈페이지를 보면 보통 안드로이드...