梳理你的思路(从OOP到架构设计)_认识EIT造形与内涵

发布于:2024-12-22 ⋅ 阅读:(14) ⋅ 点赞:(0)

目录

1、 认识类(Class)与内涵

2、 认识EIT造形与内涵

EIT造形: 类造形的组合​编辑

复习EIT的基本形与变形​编辑

不同内涵 + EIT造形


1、 认识类(Class)与内涵

  • 回顾

        

  • 类(Class)是比较小的造形

     

  • 各种不同内涵,可以透过类(Class)的形式(Form)来呈现出来。
  • 类造形就像集装箱(Container) ,可以容纳各种内涵。
  • 集装箱的形式大多与内涵无关。

2、 认识EIT造形与内涵

EIT造形: 类造形的组合
复习EIT的基本形与变形
  • EIT 造形就像比類(Class)大的集裝箱。
  • 就像集装箱也有不同形式(即變形)。
  • EIT造形有2种变形,如下:
不同内涵 + EIT造形
  • 线程(Thread)内涵 + EIT造形

       

  • UI窗口(View)内涵 + EIT造形
// myView.java
// ………
public class myView extends View {
    private Paint paint= new Paint();
    private int line_x = 100;
    private int line_y = 100;
    private float count = 0;
    myView(Context ctx) { super(ctx); }
        @Override
        protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            //-----------------------------------------------------
            if( count > 12) count = 0;
            int x = (int) (75.0 * Math.cos(2*Math.PI * count/12.0));
            int y = (int) (75.0 * Math.sin(2*Math.PI * count/12.0));
            count++;
            //---------------------------------------------

            canvas.drawColor(Color.WHITE);
            paint.setColor(Color.BLACK);
            paint.setStrokeWidth(3);
            canvas.drawLine(line_x, line_y, line_x+x, line_y+y, paint);
            paint.setStrokeWidth(2);
            paint.setColor(Color.RED);
            canvas.drawRect(line_x-5, line_y - 5, line_x+5, line_y + 5, paint);
            paint.setColor(Color.YELLOW);
            canvas.drawRect(line_x-3, line_y - 3, line_x+3, line_y + 3, paint);
        }
}
  • 将上述两个有内涵的EIT造形,加以组合起来

        

  • 将Thread造形与View造形做些组合,可以创造出双线程的绘图循环: View造形的UI线程与Thread造形的小线程,联合控制了绘图循环。
     
  • 在游戏软件应用上,这个Thread造形里的小线程(由UI线程所诞生的)扮演一个特殊的角色:成为游戏的主控循环(Game Loop),而UI线程则专注于响应UI 的事件,创造出两个线程完美分工。由于这个线程专注于游戏主控循环,所以又称为游戏线程(Game Thread)