Flower - diagrammatic programming language
Flower's goal was to design a diagrammatic programming language based on flow chart and develop integrated development environment. This is demo videos. If you cannot watch the video clearly, please download the demo files and play it.
2016.01.10
no image
[Flower] MFC로 Flower구현하기~~
다음 프로젝트를 MFC를 조금 할 줄 알아야 해서 짬이 있는 틈을 타서 시작 해 버렸 습니다. 원래는 기존에 자바로 구현한 Flower를 그대로 리펙토링 할 예정이었는데, C++코딩을 너무 안해서 공부를 다시 해야 하고 MFC프레임웍에 익숙해져야 하기 때문에 Flower를 아주 MFC로 구현 해보려고 합니다. 코드가 나름 커졌기 때문에 한번에 똑같이 구현 할 수는 없으니까 작은 단위로 잘라서 구현해 나갈 생각입니다. 이미 구현을 한 것을 다른 언어와 GUI를 이용하는 거라서 크게 어렵지는 않을 것으로 예상합니다. 아자아자~~ 화이팅!! 일단 MFC의 컨트롤들을 잘 못쓰기 때문에 GUI쪽 말고 로직과 자료구조를 구현하는 것에 일단 초점을 맞추고 있습니다. 오늘은 MFC패턴을 적용하여 큰 틀을 잡는 것만 ..
2010.01.21
[flower] 도형을 복사 하는데 굉장히 비효율적으로 동작하고 있었네요..
도형 객체를 복사하는 루틴을 "prototype pattern"을 적용하고 있는데, 원래 복사 하는 코드에 비효율적인 부분이 있었습니다. DFigure라고 하는 추상 클래스는 화살표가 아닌 도형을 나타내는데요.. (단말, 처리, 분기도형 등등이 이에 해당합니다.) 여기에는 이 도형이 화살표로 연결되었을 경우 연결된 도형을 알고 있습니다. 또한, 자신에게 들어오거나, 자신으로 부터 나가는 화살표도 알고 있습니다.(알고 있 다는 표현을 한 이유는 정확하게 composition인지, aggregation인지하는 개념에 아 직 익숙하지 않아서 입니다.) 그런데 복사를 할때 자신 도형에 연결된 도형은 복사 하지 않아야 합니다. 그 이유는 그렇게 하기로 정했기 때문이죠..(다른 비슷한 프로그램들도 그렇게 하더 군..
2010.01.19
[Flower] Demo video
This is demo videos. If you cannot watch the video clearly, please download the demo files and play it.
2010.01.04
[Flower]코드리뷰를 했습니다.와우~~
코드리뷰를 오늘 했네요.. 운영자형에게 시연을 하는데 사소한 버그가 있어서 부끄러웠지만 큰 문제 없이 코드리뷰는 진행되었고, 나름 잘된 것 같습니다. 원래는 팀원 각자가 자신의 코드를 보여주고 시연을 해야 하는데, GUI파트를 담당한 제가 어찌하다보니까 다 해버리게 되었네요..ㅋㅋ 과제 완료는 계획보다 늦어졌지만, 프로젝트 일정 자체는 일정되로 진행 되어서 만족하고 있습니다. 마무리하는 차원에서 완료 세미나와 보고서를 써야 하는데 귀차니즘이 또 다가 오고 있네요~~ 도와주세요~~~
2009.12.28
[flower]마무리를 하고 있습니다.
너무 오랫만입니다. 한달만이네요. 시험 기간 전에 과제를 어느정도 마무리 하느라고 정신없이 코딩하고, 시험치고나서 게을러지는 바람에 늦어 졌습니다. 바로 직전에 제가 썻던 내용을 보니까 프로시저를 구현 하기 직전 까지군요.. 프로시저는 현제 잘 동작하고 있습니다. 이미 컴파일러와 디버거와도 연동되어서 테스트 중에 있습니다. 와~~ 많은 일이 있었군요... 그동안을 간략하게 정리해보아야 겠군요.. 1. 프로시저를 구현했습니다. 프로시저로 쓸 InnerFrame을 JFrame을 수정하여서 새로운 InnterFrame을 만들었습니다. 기존의 JInternalFrame은 internalframe을 붙인 패널에는 다른 것이 붙이안아서 직접 서적을 참고하여 구현하였습니다. 프로시저의 생성은 툴바에 버튼을 통해 생성..
2009.12.22
[flower]GUI 속성창 이벤트 처리를 마쳤습니다.
오늘까지 속성창에 대해서 이벤트 처리를 완료 했습니다. 기본적으로 도형을 클릭하면 속성창에 그 값이 바로 반영되고 속성창의 값을 변경시키면 선택된 모든 도형의 값을 모두 변경 시키게 했습니다. 여러개를 선택하게 되면 같은 값을 가질 경우만 값을 나타내고 다른 경우는 초기 값을 넣어 주었습니다. 이때 조금 문제가 있었는데요.. 두 도형의 값이 다르면, 속성창에 초기 값을 넣어 주는데, 이것 또한 이벤트가 발행해서 두 도형 모두 초기 값으 로 값이 변경 되는 것이 었습니다. 그래서 생각한 방법이 도형을 선택하게 되면 일단 이벤트 리스너를 제거 했다가 초기화 후 다시 이벤트 리스너 를 동작 하도록 하였습니다. 추가 적으로 한 것이 있는데요.. 프로시저를 구현할 내부 창이 기존 창과 동작 모습이 어색했는데, 이..
2009.11.20
no image
[flower] 프로시저 GUI를 구현 하고 있습니다.1
드디어 올것이 왔군요.. 지금까지 프로시저를 생각하지 않고 구현하고 있었습니다. 큰 문제가 없을 것이라고 생각 했지만 문제가 있긴하군요.. 현재는 심볼 매니저와 캔버스가 하나의 쌍으로 있어서 그것이 뷰와 모델의 관계를 했었는데 이제 함수가 들어오면서 부터 여러개의 심볼 매니저와 캔버스가 있어야 합니다. 먼저 painter(controller)는 심볼매니져와 캔버스의 쌍을 관리 하고 있어야 합니다. 즉, 사용자가 활성화 한 캔버스에 대한 심볼 매니저가 적정하게 동작 해야 합니다. 그리고, 프로시저 심볼을 디자인 해야 합니다. 프로시저라는 심볼은 내부적으로 나의 심볼 매니저를 알고 있어야 합니다. 왜냐하면 심볼 매니저로 부터 해당 프로시저의 시작 심볼을 가져 와야 하니까요(컴파일러가 추적할 수 있어야 함니다..
2009.11.18
no image
[Flower] GUI 마무리 했습니다.
조금 게을러지긴 했지만 얼추 마무리를 했습니다. 마지막까지 고생을 시킨 것이 있었는데요.. pallet이 생각했던데로 디자인이 되지 않고 자기 멋대로 행동 하더라구요... 아무튼 이래저래 해서 안정시켜 두었는데 GUI layout을 구성할때 공부가 부족했던것 같습니다. 얕잡아본것이죠... 아무튼 다음주 부터는 controller와 연동하는 것인데 그에 앞서 전체적인 설계를 다시 하면서 연동해야 겠습니다. 함수기능을 염두에 두고 구현 해야 하죠...
2009.11.16