기본 콘텐츠로 건너뛰기

7월, 2021의 게시물 표시

데이터 위주의 프로그래밍

동료가 새로운 프로젝트를 맡게되어 하던 일을 제가 이어 하게 되었습니다. 프로젝트 전반적인 내용은 알고 있는 상태였고 개발에 앞서 지금까지 작성한 코드를 리뷰하였습니다. 가장 눈에 띄는 부분은 클래스 데이터를 자동화하여 데이타베이스로 저장하는 구조였습니다. 클래스의 속성을 읽어와 자동으로 데이타베이스로 저장하는 SQL 구문을 작성하게 되어 있었습니다. 'EntityFramework을 사용하면 되지'하는 사람도 있을 것 같습니다. 이 글은 코드 리뷰에 대한 것임을 미리 말씀드립니다. var eqStructureProperties = typeof ( Document . EQStructure ) . GetProperties ( ) ; for ( int i = 0 ; i < eqStructureProperties . Length ; i ++ ) { string sColumnName = eqStructureProperties [ i ] . Name ; if ( sColumnName != "Entity" ) { object oValue = data . GetType ( ) . GetProperty ( sColumnName ) . GetValue ( data , null ) ; sColumns += string . Format ( "[{0}]," , sColumnName ) ; if ( Document . _notStringColumns . Contains ( sColumnName ) ) { sValues += string . Format ( "{0}," , oValue == null ? "" : oValue . ToString ( ) ) ; } else { sValues