Spring.NET + NHibernate로 구성되어 있는 프로젝트를 그대로 살리는 것입니다…
NHibernate는 자료가 조금 있어서 그럭저럭 공부를 했는데… Spring.NET은 공식 사이트도 5XX가 뜨는게 더 많고, 지식이 짧아 공부가 힘듭니다… .ㅠㅠㅠ
찾다가 여기까지 오게 되었는데 혹시 아시는 분이나 관련하여 정보가 있으시면 도움 부탁드립니다… 공부할 만한 자료나 책도 있으면 같이 적어주시면 감사하겠습니다!!!
프로젝트를 다른 언어로 갈아 엎으면 안되나 건의도 해보았지만 불가능 하다고 일단은 진행 해보자는 대답을 들어서 다른 언어로 바꾸는것은 불가능합니다… ㅠㅠ
원래 Java 로 사용하는 Spring Framework 를 .NET 으로 포팅한 것이 Spring - NET 이라면,
Java spring 을 어느정도 체득 하시고 두 언어(Java 와 C#) 의 어느정도 차이정도만 고려 하셔서 실무에 활용 하심이 어떠할까요? 저도 잘은 모르겠습니다만, 아무래도 사용되는 키워드나 값 타입 정도들은 동일하게 포팅 해 놓지 않았을까 합니다.
(확실히 Java - Spring 은 한국어로 되어 있는 강의나 자료가 월등히 많긴 합니다.)
강령술사로 시작하시는군요… 스프링 닷넷을 처음 본 것이 2011년쯤인 것 같네요.
1.3.1 버전에서 2.0 마일스톤 로드맵이 바뀌지 않는걸 몇년 지켜본 것 같은데 3.0까지 나오고 닷넷8에서 동작하게 만들다니 대단하긴 합니다.
채용공고에서 사용중인 회사가 2개 보였던 것 같은데 그 중 하나는 일본 쪽 커머스 회사였던 것 같습니다. 지금은 일반적이지만 OOP, 페어프로그래밍을 포함하고 소프트웨어 공학을 실용적으로 반영하려고 노력하는게 보이는 공고 내용이 인상 깊었습니다. 하지만 적으신 내용을 보면 아마도 그 회사는 아니신 것 같네요.
과거 프로젝트 살린다는 것이 사용하지 않고 납품했던 프로젝트를 다시 납품하기 위해 또는 수정 사항을 반영해서 다시 납품한다는 것이겠죠? 3 버전은 닷넷8에 VS 2022에서 동작하도록 되어있어 좀 놀랐습니다.
문서는 2.0인데 1.3에 추가사항을 업데이트 한 것 같습니다.
우선 컴파일하고 실행은 잘 되나봅니다. 하이버네이트를 보고 계신 것 보면요.
프로젝트에 readme.txt, *.csproj 같은 파일을 보시고 스프링과 닷넷을 포함한 패키지들 버전을 확인해두세요. 과거 버전이라 문서를 찾을 때 과거 버전을 찾으세요.
빌드나 앞으로 계속 개발을 한다면 개발환경을 최근이나 문서(2.x)에 맞추는 것이 유리할 수 있습니다. 스프링 구성을 많이 건드릴 것 같다면 2.x에, 닷넷과 C# 또는 다른 패키지에 버그가 수정된 것을 업데이트하고 싶거나 배포 환경이 문제되는 경우에는 3.x로 올리는 것과 같은 상황이죠.
마이그레이션이 필요하다면(또는 모르겠다면) 시니어급에 도움을 요청하세요.
프로젝트가 어느정도 최신 버전이면 위 문서와 튜토리얼, 그리고 spring.net 의 과거 아티클을 찾으세요. 오래된 글이라 스크랩한 블로그들까지 찾으시면 기초 내용을 다룬 글들이 꽤 있어서 먼저 작은 프로젝트를 이해하시고 나서 지금 프로젝트를 보시면 도움되실겁니다. 다만 블로그 글 내용에 잘못 설명된 내용들이 꽤 보이니 글쓴이는 저걸 저렇게 이해했구나 하는 정도로 받아들이고 용어에 대해 제대로 이해하고 싶으면 최근 블로그에서 검색해보세요. 개념은 닷넷, 자바의 최근 글을 보시는 것이 더 좋습니다.
자세한 글 감사합니다… 이것 저것 보면서 튜토리얼을 따라 가보는데 c#을 잘 모르는 사람에겐 띄엄띄엄 글이 있어 읽기 힘들더라구요 ㅠ제 생각은 하이버네이트만 된다면 사실 스프링 닷넷 이 왜 필요한가에 대해서 잘 모르겠습니다… aop 구조로 짠다 하더라도 굳이 필요한가 싶더라구요 물론 잘 모르고 하는말이지만… ㅠ 자세한글 감사합니다
과거엔 자바 스프링이나 스프링 닷넷이나 도찐 개찐이었는데 자바도 구성하고 사용하는게 불편해서 많이 바뀌었습니다.
닷넷은 그 불편하던 것을 포팅해놓은 상태이고요.
코드 양이 얼마나 되고 얼마나 복잡한지, 얼마나 옛날 서버에 배포해야 하는지 등을 몰라 쉽게 말씀드릴 수는 없지만 작업양이 많고 오랫동안 유지보수를 해야 한다면 회사 입장에서도 그 프로젝트에 대해 고민해봐야 하고 질문자님도 개발자로 커리어에 대해 고민을 해보셔야 할 수 있습니다.
기술의 구현 방법이 옛날 방식이지만 개념은 지금도 유사합니다. 편의성에서 차이가 엄청 벌어진건데… 어쨌든 잘 이겨내세요.