https://blog.udacity.com/2015/06/30-android-developer-resources.html
2017년 9월 28일 목요일
2017년 9월 26일 화요일
ruby style guide 관련
루비 스타일 가이드 : https://github.com/bbatsov/ruby-style-guide
에어비엔비의 스타일 가이드 : https://github.com/airbnb/ruby#whitespace
루비스타일가이드 분석 http://batsov.com/rubocop/
에어비엔비의 스타일 가이드 : https://github.com/airbnb/ruby#whitespace
루비스타일가이드 분석 http://batsov.com/rubocop/
Ruby On Rails - Cloud9 에서 테스트 개발 해보기
http://blog.naver.com/PostView.nhn?blogId=dg_667&logNo=220616006452&parentCategoryNo=&categoryNo=&viewDate=&isShowPopularPosts=false&from=postView
여기에 있는 것처럼 Cloud9 에 가입해서 루비온레일즈 로 게시판을 만들어 보았다.
비지니스 로직이 들어갈 모델관련 파일은
rails g model 모델명 라는 식으로 생성한다.
그러면 db/migrate/ 밑에 테이블 정의하는
t.string:cell2
t.text:comment
처럼 추가한다.
그리고 나서
rake db:migrate 를 실행해서 실제 디비에 테이블이 생성되도록한다.
이제 게시판의 글목록,쓰기,보기,삭제 등을 구현해야 하는데,
일단
http://blog.naver.com/PostView.nhn?blogId=dg_667&logNo=220638145196&parentCategoryNo=&categoryNo=&viewDate=&isShowPopularPosts=false&from=postView
이곳을 참고하여 본다.
현재 board_controller.rb 의 write,list,view,list, delete 메소드(def)에 아무것도 없는데 각각 채워넣어주면된다.
def list
@table1 = Table1.all
end
하고
list.html.erb에선
<%@table1.each do |tablecell|%>
<p><%=tablecell.cell1%></p>
<%end%>
하면 출력끝..오...
등록은
def register
if params[:cell1].present? && params[:cell2].present?
table1 = Table1.new
table1.cell1 = params[:cell1]
table1.cell2 = params[:cell2]
table1.save
else
puts "no data"
end
redirect_to action:"list"
end
function 을...왜 def 로 했을까...
def sipal(num1, num2)
return num1 + num2
end
이나..
function sipal(num1, num2)
return num1 + num2
end
이나...
좋은지 모르겠음..
여기에 있는 것처럼 Cloud9 에 가입해서 루비온레일즈 로 게시판을 만들어 보았다.
비지니스 로직이 들어갈 모델관련 파일은
rails g model 모델명 라는 식으로 생성한다.
그러면 db/migrate/ 밑에 테이블 정의하는
t.string:cell2
t.text:comment
처럼 추가한다.
그리고 나서
rake db:migrate 를 실행해서 실제 디비에 테이블이 생성되도록한다.
이제 게시판의 글목록,쓰기,보기,삭제 등을 구현해야 하는데,
일단
http://blog.naver.com/PostView.nhn?blogId=dg_667&logNo=220638145196&parentCategoryNo=&categoryNo=&viewDate=&isShowPopularPosts=false&from=postView
이곳을 참고하여 본다.
현재 board_controller.rb 의 write,list,view,list, delete 메소드(def)에 아무것도 없는데 각각 채워넣어주면된다.
def list
@table1 = Table1.all
end
하고
list.html.erb에선
<%@table1.each do |tablecell|%>
<p><%=tablecell.cell1%></p>
<%end%>
하면 출력끝..오...
등록은
def register
if params[:cell1].present? && params[:cell2].present?
table1 = Table1.new
table1.cell1 = params[:cell1]
table1.cell2 = params[:cell2]
table1.save
else
puts "no data"
end
redirect_to action:"list"
end
function 을...왜 def 로 했을까...
def sipal(num1, num2)
return num1 + num2
end
이나..
function sipal(num1, num2)
return num1 + num2
end
이나...
좋은지 모르겠음..
Ruby On Rails - 기초 설정
일단 앱의 configure 폴더에
environments , initializers , locale , database 등의 설정파일과 폴더가 있다.
환경은 개발, 배포, 테스트 버젼으로 각각 설정할수 있다.
http://guides.rorlab.org/configuring.html 참고
기본 예약어 등은 http://gnuteam.tistory.com/118 여기서.
environments , initializers , locale , database 등의 설정파일과 폴더가 있다.
환경은 개발, 배포, 테스트 버젼으로 각각 설정할수 있다.
http://guides.rorlab.org/configuring.html 참고
기본 예약어 등은 http://gnuteam.tistory.com/118 여기서.
Ruby On Rails 를 알아보자 - 개요
루비 온 레일즈를 알아보기 전에 공식 사이트의 설명을 보자
http://rubykr.github.io/rails_guides/getting_started.html
레일즈는 루비 언어로 작성된 웹 어플리케이션 프레임워크
철학
-DRY – “Don’t Repeat Yourself (반복하지 말 것)”
-CoC , Convention Over Configuration
-REST
MVC 아키텍쳐 기반임
프로젝트 생성
콘트롤러 생성 : $ rails generate controller boardController write list ...
콘트롤러생성후 라우터에 콘트롤러가 있다는 것을 지정
config/routes.rb
root
:to
=>
"home#index"
일반적인 게시판 류는 그냥 스캐폴드 로 생성
$ rails generate scaffold Post name:string title:string content:text |
파일 | 목적 |
---|---|
db/migrate/20100207214725_create_posts.rb | 데이터베이스에 ‘posts’ 테이블 생성하는 마이그레이션 (여러분의 파일 이름은, 다른 타임 스템프 값을 가지고 있습니다.) |
app/models/post.rb | Post 모델 |
test/fixtures/posts.yml | 테스트를 위한 더미(Dummy) posts |
app/controllers/posts_controller.rb | Posts 컨트롤러 |
app/views/posts/index.html.erb | 모든 posts 를 출력하는 index 뷰 |
app/views/posts/edit.html.erb | 존재하는 post 를 수정하는 edit 뷰 |
app/views/posts/show.html.erb | 단일 post를 보여주는 show 뷰 |
app/views/posts/new.html.erb | 새로운 post 를 만들기 위한 new 뷰 |
app/views/posts/_form.html.erb | post 를 수정하거나 새로 만드는데 사용되는 폼(form)을 저장하는 조각(partial) 파일 |
app/helpers/posts_helper.rb | post 뷰를 위한 헬퍼(Helper) 함수를 위한 파일 |
test/unit/post_test.rb | posts 모델을 위한 유닛 테스트 파일 |
test/functional/posts_controller_test.rb | posts 컨트롤러를 위한 기능 테스트 파일 |
test/unit/helpers/posts_helper_test.rb | posts 헬퍼(Helper)를 위한 유닛 테스트 파일 |
config/routes.rb | posts 를 위한 라우팅 정보를 담은 수정된 라우팅 파일 |
public/stylesheets/scaffold.css | 발판(Scaffold) 뷰를 좀 더 미려하게 만드는 CSS파일 |
2017년 9월 25일 월요일
스프링 프로젝트 개발 전에 알아 두어야 할것들
스프링 3 & 4
- EJB 의 폐쇄적이고 상속 위주의 단점을 극복하고자 만든 프레임워크, 톰캣이 가능하다..ㅋ
- 오픈소스로 만들어진 안정적인 프레임워크
- 자바로 웹 또는 실행 애플리케이션을 만들 때 사용할 수 있는 프레임워크
- 자바로 네트워크 연결, 디비 연결등 귀찮고 짜증나는 작업을 쉽고 편하게 지원하여 , 비지니스 로직 개발에만 전념할수 있도록 해줌.
- POJO 방식을 지우너하고 경량 컨테이너를 지원함으로서 프레임워크에 종속되지 않는 개발 방식이 가능
-- POJO : 특정 라이브러리를 상속하지 않고 자바 자체의 구현 함수만으로 프로그램이 제작 가능한건.
-- 경량 컨테이너 : 프레임워크를 전부 로드하는 게 아니라 필요한 기능한 사용가능한 경량 컨테이너 방식
- 의존성주입, 관점 지향 컨테이너, 포터블 서비스 추상화
--의존성 주입 : 헐리우드 법칙, 내가 필요해서 요청하는게 아니라 , 스프링에서 필요한 부분에 호출해 준다. 즉, 빈 컨테이너 (컨테이너 박스) 에 내가 사용할 빈을 미리 등록해 놓으면, 스프링이 해당 부분에서 알아서 빈을 꺼내서 주입해 준다. 프로그램 내에서 사용할 객체를 이것저것 new 하는게 아니라, 빈 컨테이너를 통해 사용함으로서 객체간의 의존성을 최소화함.
-- 관점지향 컨테이너 : 여러 객체에서 공통으로 적용되는 공통관심사항(트랜잭션,로깅,보안등)을 특정 메소드,필드가 실행되기 전후,예외발생등의 시점에 실행해 주는 것을 관리, 기존의 방식이라면, 매번 해당 기능을 호출하고 관리해야 되므로 문제가 생기던것을, 훅 과 같은 방식으로 처리.
-빈 객체의 생성,소멸과 같은 라이프 사이클을 관리
-데이터 베이스 접근의 일관성.
[참고].MAVEN 필요 라이브러리 관리툴
jar 를 library , plugin 등의 폴더에 다운받아서 저장 하는 귀찮은 과정을, Maven 이 대신 해줌.
단순히 다운로드 뿐만 아니라, 모듈간 의존성을 관리해줌.
스프링 뿐만 아니라 기존 프로젝트도 메이븐 프로젝트로 변경할수 있음.
최신의 이클립스에는 기본으로 탑재되어 있음.
또 하나의 기능은 빌드 기능이다. 프로젝트를 컴파일,테스트,패키징,인스톨 과 같은 빌드 라이프 싸이클을 설정하여, 한번에 컴파일->인스톨 까지 가능하도록 도와 준다. 심지어 이클립스에서 설정이 가능하다.
-----------------------------------------------------------------------------------------------
주요용어
빈(bean)
스프링이 IoC 방식으로 관리하는 오브젝트를 말한다. 관리 되는 오브젝트라고 부르기도 한다.
스프링이 직접 그 생성과 제어를 담당하는 오브젝트만을 빈이라고 부른다.
빈 팩토리(bean factory)
스프링이 IoC를 담당하는 핵심 컨테이너를 가리키다. 빈을 등록하고. 생성하고, 조회하고 돌려주고, 그 외에 부가적인 빈을 관리하는 기능을 담당한다.
보통은 이 빈 팩토리를 바로 사용하지 않고 이를 확장한 애플리 케이션 컨텍스트를 이용한다.
애플리케이션 컨텍스트(application context)
빈 팩토리를 확장한 IoC 컨테이너이다. 빈을 등록하고 관리하는 기본적인 기능은 빈 팩토리와 동일하다.
스프링이 제공하는 각종 부가 서비스를 추가로 제공한다.
빈 팩토리라고 부를 때는 주로 빈의 생성과 제어의 관점에서 이야기하는 것이고, 애플리케이션 컨텍스트라고 할 때는 스프링이 제공하는
애플리케이션 지원 기능을 모두 포함해서 이야기하는 것이라고 보면 된다.
설정정보/설정 메타정보(configuration metadata)
스프링의 설정정보란 애플리케이션 컨텍스트 또는 빈 팩토리가 IoC를 적용하기 위해 사용하는 메타정보를 말한다.
이는 구성정보 내지는 형상정보라는 의미이다.
스프링 프레임워크
스프링 프레임워크는 IoC 컨테이너, 애플리케이션 컨텍스트를 포함해서 스프링이 제공하는 모든 기능을 통틀어 말할 때 주로 사용한다.
web.xml 에 관한 설명은 아래에서.
출처: http://seongilman.tistory.com/16 [SEONG]
톰캣 관련
-PSI-Probe : Tomcat 모니터링 툴
https://dukeom.wordpress.com/2011/08/08/psi-probe-tomcat-%EB%AA%A8%EB%8B%88%ED%84%B0%EB%A7%81-%ED%88%B4/
-Tomcat manager GUI 사용하기
https://dukeom.wordpress.com/2011/08/08/tomcat-manager-gui-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/
스프링 강좌
스프링 MVC
http://cloudstudying.kr/courses/12
------------------------------------------------------------------------------------------------------------
-web.xml 에 대해 알아보자
http://seongilman.tistory.com/16
-스프링 파일 업로드 예제
https://dukeom.wordpress.com/2011/08/25/spring3-file-upload-%EA%B5%AC%ED%98%84/
-스프링 프로퍼티 파일을@로 읽어오기
https://dukeom.wordpress.com/2016/06/26/%EC%8A%A4%ED%94%84%EB%A7%81%EC%97%90%EC%84%9C-%ED%94%84%EB%A1%9C%ED%8D%BC%ED%8B%B0-%ED%8C%8C%EC%9D%BC%EC%9D%84-value%EB%A1%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/
-스프링 디비 관련
tomcat(7.x),spring,mybatis 사용시 tomcat connection pool 설정하기
https://dukeom.wordpress.com/2012/02/21/tomcat7-xspringmybatis-%EC%82%AC%EC%9A%A9%EC%8B%9C-tomcat-connection-pool-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0/
- EJB 의 폐쇄적이고 상속 위주의 단점을 극복하고자 만든 프레임워크, 톰캣이 가능하다..ㅋ
- 오픈소스로 만들어진 안정적인 프레임워크
- 자바로 웹 또는 실행 애플리케이션을 만들 때 사용할 수 있는 프레임워크
- 자바로 네트워크 연결, 디비 연결등 귀찮고 짜증나는 작업을 쉽고 편하게 지원하여 , 비지니스 로직 개발에만 전념할수 있도록 해줌.
- POJO 방식을 지우너하고 경량 컨테이너를 지원함으로서 프레임워크에 종속되지 않는 개발 방식이 가능
-- POJO : 특정 라이브러리를 상속하지 않고 자바 자체의 구현 함수만으로 프로그램이 제작 가능한건.
-- 경량 컨테이너 : 프레임워크를 전부 로드하는 게 아니라 필요한 기능한 사용가능한 경량 컨테이너 방식
- 의존성주입, 관점 지향 컨테이너, 포터블 서비스 추상화
--의존성 주입 : 헐리우드 법칙, 내가 필요해서 요청하는게 아니라 , 스프링에서 필요한 부분에 호출해 준다. 즉, 빈 컨테이너 (컨테이너 박스) 에 내가 사용할 빈을 미리 등록해 놓으면, 스프링이 해당 부분에서 알아서 빈을 꺼내서 주입해 준다. 프로그램 내에서 사용할 객체를 이것저것 new 하는게 아니라, 빈 컨테이너를 통해 사용함으로서 객체간의 의존성을 최소화함.
-- 관점지향 컨테이너 : 여러 객체에서 공통으로 적용되는 공통관심사항(트랜잭션,로깅,보안등)을 특정 메소드,필드가 실행되기 전후,예외발생등의 시점에 실행해 주는 것을 관리, 기존의 방식이라면, 매번 해당 기능을 호출하고 관리해야 되므로 문제가 생기던것을, 훅 과 같은 방식으로 처리.
-빈 객체의 생성,소멸과 같은 라이프 사이클을 관리
-데이터 베이스 접근의 일관성.
[참고].MAVEN 필요 라이브러리 관리툴
jar 를 library , plugin 등의 폴더에 다운받아서 저장 하는 귀찮은 과정을, Maven 이 대신 해줌.
단순히 다운로드 뿐만 아니라, 모듈간 의존성을 관리해줌.
스프링 뿐만 아니라 기존 프로젝트도 메이븐 프로젝트로 변경할수 있음.
최신의 이클립스에는 기본으로 탑재되어 있음.
또 하나의 기능은 빌드 기능이다. 프로젝트를 컴파일,테스트,패키징,인스톨 과 같은 빌드 라이프 싸이클을 설정하여, 한번에 컴파일->인스톨 까지 가능하도록 도와 준다. 심지어 이클립스에서 설정이 가능하다.
-----------------------------------------------------------------------------------------------
주요용어
빈(bean)
스프링이 IoC 방식으로 관리하는 오브젝트를 말한다. 관리 되는 오브젝트라고 부르기도 한다.
스프링이 직접 그 생성과 제어를 담당하는 오브젝트만을 빈이라고 부른다.
빈 팩토리(bean factory)
스프링이 IoC를 담당하는 핵심 컨테이너를 가리키다. 빈을 등록하고. 생성하고, 조회하고 돌려주고, 그 외에 부가적인 빈을 관리하는 기능을 담당한다.
보통은 이 빈 팩토리를 바로 사용하지 않고 이를 확장한 애플리 케이션 컨텍스트를 이용한다.
애플리케이션 컨텍스트(application context)
빈 팩토리를 확장한 IoC 컨테이너이다. 빈을 등록하고 관리하는 기본적인 기능은 빈 팩토리와 동일하다.
스프링이 제공하는 각종 부가 서비스를 추가로 제공한다.
빈 팩토리라고 부를 때는 주로 빈의 생성과 제어의 관점에서 이야기하는 것이고, 애플리케이션 컨텍스트라고 할 때는 스프링이 제공하는
애플리케이션 지원 기능을 모두 포함해서 이야기하는 것이라고 보면 된다.
설정정보/설정 메타정보(configuration metadata)
스프링의 설정정보란 애플리케이션 컨텍스트 또는 빈 팩토리가 IoC를 적용하기 위해 사용하는 메타정보를 말한다.
이는 구성정보 내지는 형상정보라는 의미이다.
스프링 프레임워크
스프링 프레임워크는 IoC 컨테이너, 애플리케이션 컨텍스트를 포함해서 스프링이 제공하는 모든 기능을 통틀어 말할 때 주로 사용한다.
web.xml 에 관한 설명은 아래에서.
출처: http://seongilman.tistory.com/16 [SEONG]
톰캣 관련
-PSI-Probe : Tomcat 모니터링 툴
https://dukeom.wordpress.com/2011/08/08/psi-probe-tomcat-%EB%AA%A8%EB%8B%88%ED%84%B0%EB%A7%81-%ED%88%B4/
-Tomcat manager GUI 사용하기
https://dukeom.wordpress.com/2011/08/08/tomcat-manager-gui-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/
스프링 강좌
스프링 MVC
http://cloudstudying.kr/courses/12
------------------------------------------------------------------------------------------------------------
-web.xml 에 대해 알아보자
http://seongilman.tistory.com/16
-스프링 파일 업로드 예제
https://dukeom.wordpress.com/2011/08/25/spring3-file-upload-%EA%B5%AC%ED%98%84/
-스프링 프로퍼티 파일을
tomcat(7.x),spring,mybatis 사용시 tomcat connection pool 설정하기
2017년 9월 16일 토요일
Swift 기초 설명과 예제와 깃 소스,
https://sites.google.com/a/gclue.jp/swift-docs/
강추, 충실한 깃 소스와 화면 캡춰
흠..내가 만들려고 했는데 이미 만들어져 있네요. ㅋ 일본분 화팅
http://docs.fabo.io/swift/
일로 옮겼단다. 책저자 인거 같네요
강추, 충실한 깃 소스와 화면 캡춰
흠..내가 만들려고 했는데 이미 만들어져 있네요. ㅋ 일본분 화팅
http://docs.fabo.io/swift/
일로 옮겼단다. 책저자 인거 같네요
2017년 9월 14일 목요일
swift-salaryman 멋지다 일본 개발자
By schoolhompy at 9월 14, 2017
No comments
우연히 발견 스위프트 일본 개발자 사이트 이미지로 봐선 나이가 꽤 있으신듯 ㅋ
swift-salaryman.com 멋지다 일본 개발자
swift-salaryman.com 멋지다 일본 개발자
2017년 9월 12일 화요일
designing-adaptive-layouts-for-iphone-6-plus 적응성디자인?
http://mathewsanders.com/designing-adaptive-layouts-for-iphone-6-plus/
화면을 돌리면 그에 맞게 적응하는 효과
화면을 돌리면 그에 맞게 적응하는 효과
2017년 9월 11일 월요일
SWIFT 3.0 ㅋㅋ 얼마안의 아이폰 공부인지..
일단 Swift 가이드라고 하니. 먼저 보고..
http://seorenn.blogspot.jp/2014/06/swift_16.html
아이폰 및 맥OS ...개인적으로는 둘다 싫어하지만, 여튼 만들수 있다니 정리가 잘되어있어서 좋음
http://seorenn.blogspot.jp/2014/06/swift_16.html
아이폰 및 맥OS ...개인적으로는 둘다 싫어하지만, 여튼 만들수 있다니 정리가 잘되어있어서 좋음